SpringBoot自学教程 | 第四篇:Spring Boot整合mybatis

  引入依赖

  1:在pom文件引入mybatis-spring-boot-starter的依赖:

1 <dependency>
2        <groupId>org.mybatis.spring.boot</groupId>
3        <artifactId>mybatis-spring-boot-starter<artifactId>
4        <version>1.3.0</version>
5 </dependency>

  2:引入数据库连接依赖:

 1 <dependency>
 2        <groupId>mysql</groupId>
 3        <artifactId>mysql-connector-java</artifactId>
 4        <scope>runtime</scope>
 5 </dependency>
 6 <dependency>
 7        <groupId>com.alibaba</groupId>
 8        <artifactId>druid</artifactId>
 9        <version>1.0.29</version>
10 </dependency>

  

  引入数据源

    application.properties配置文件中引入数据源:

1 spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
2 spring.datasource.url=jdbc:mysql://127.0.0.1:3306/school?characterEncoding=utf-8
3 spring.datasource.username=root
4 spring.datasource.password=123456
5 spring.datasource.driver-class-name=com.mysql.jdbc.Driver

    这样,springboot就可以访问数据了。

  编写测试代码,结构如下:

    ①:首先创建entity(与数据库字段映射)在entity下创建User类实体

 1 package com.asideal.zhcx.model;
 2
 3 public class User {
 4
 5     private int id;
 6     private String username;
 7     private String password;
 8
 9     public int getId() {
10         return id;
11     }
12
13     public void setId(int id) {
14         this.id = id;
15     }
16
17     public String getUsername() {
18         return username;
19     }
20
21     public void setUsername(String username) {
22         this.username = username;
23     }
24
25     public String getPassword() {
26         return password;
27     }
28
29     public void setPassword(String password) {
30         this.password = password;
31     }
32
33     @Override
34     public String toString() {
35         return "User{" +
36                 "id=" + id +
37                 ", username=‘" + username + ‘\‘‘ +
38                 ", password=‘" + password + ‘\‘‘ +
39                 ‘}‘;
40     }
41
42 }

    ②:创建dao(数据库操作语句)在dao下创建UserDao

 1 package com.asideal.zhcx.dao;
 2
 3 import com.asideal.zhcx.model.User;
 4 import org.apache.ibatis.annotations.Select;
 5 import org.springframework.stereotype.Repository;
 6
 7 @Repository
 8 public interface UserDao {
 9
10     /**
11      * 根据id查找用户
12      * @param id
13      * @return
14      */
15     @Select("select * from t_user where id = #{id}")
16     User selectuser(int id);
17
18 }

    ③:创建服务,在service下创建UserService

 1 package com.asideal.zhcx.service;
 2
 3 import com.asideal.zhcx.dao.UserDao;
 4 import com.asideal.zhcx.model.User;
 5 import org.springframework.beans.factory.annotation.Autowired;
 6 import org.springframework.stereotype.Service;
 7
 8 @Service
 9 public class UserService {
10
11     @Autowired
12     private UserDao userDao;
13
14     public User selectUser(int id){
15         return userDao.selectuser(id);
16     }
17 }

    ④:创建controller,在controller包下创建MybatisController

 1 package com.asideal.zhcx.controller;
 2
 3 import com.asideal.zhcx.model.User;
 4 import com.asideal.zhcx.service.UserService;
 5 import org.springframework.beans.factory.annotation.Autowired;
 6 import org.springframework.web.bind.annotation.PathVariable;
 7 import org.springframework.web.bind.annotation.RequestMapping;
 8 import org.springframework.web.bind.annotation.RestController;
 9
10 @RestController
11 @RequestMapping("mybatis")
12 public class MyBatisController {
13
14     @Autowired
15     private UserService userService;
16
17     @RequestMapping("/helloUser/{id}")
18     public User selectUser (@PathVariable int id){
19         return userService.selectUser(id);
20     }
21 }

    ⑤:配置Mapper扫描,在启动类中添加MapperScan("")

 1 package com.asideal.zhcx;
 2
 3 import org.mybatis.spring.annotation.MapperScan;
 4 import org.springframework.boot.SpringApplication;
 5 import org.springframework.boot.autoconfigure.SpringBootApplication;
 6 import org.springframework.boot.web.servlet.ServletComponentScan;
 7
 8 //注册servlet注解
 9 @ServletComponentScan
10 //扫描的mapper
11 @MapperScan("com.asideal.zhcx.dao")
12 @SpringBootApplication
13 public class ZhcxApplication {
14     public static void main(String[] args) {
15         SpringApplication.run(ZhcxApplication.class, args);
16     }
17 }

  数据库表结构:(与entity的User对应)

  

  访问请求

   

    搞定!!!

原文地址:https://www.cnblogs.com/yaokaizhi/p/9562735.html

时间: 2024-11-05 21:36:06

SpringBoot自学教程 | 第四篇:Spring Boot整合mybatis的相关文章

企业分布式微服务云SpringCloud SpringBoot mybatis (十三)Spring Boot整合MyBatis

Spring中整合MyBatis就不多说了,最近大量使用Spring Boot,因此整理一下Spring Boot中整合MyBatis的步骤.搜了一下Spring Boot整合MyBatis的文章,方法都比较老,比较繁琐.查了一下文档,实际已经支持较为简单的整合与使用.下面就来详细介绍如何在Spring Boot中整合MyBatis,并通过注解方式实现映射. 整合MyBatis 新建Spring Boot项目,或以Chapter1为基础来操作 pom.xml中引入依赖 这里用到spring-bo

第七天.spring boot 整合mybatis

一. spring boot 整合mybatis 1.整合思路: 1.1 添加依赖 mybatis 1.2 在配置文件中配置数据源信息 1.3 编写pojo mapper接口 mapeer映射文件 1.4手动配置mybatis的包扫描,在主启动类添加@MapperScan 1.5 启动springboot服务器 2.开始工程部署: 2.1:添加依赖 mybatis <!--整合springboot与mybatis的整合--> <dependencies> <dependenc

Spring Boot 整合mybatis时遇到的mapper接口不能注入的问题

现实情况是这样的,因为在练习spring boot整合mybatis,所以自己新建了个项目做测试,可是在idea里面mapper接口注入报错,后来百度查询了下,把idea的注入等级设置为了warning,至于怎末设置可以自行百度,这里不再赘述,但是接下来spring boot能够运行起来,但是通过浏览器访问的时候,就会报错,后来也是经过多方查询,发现了问题的原因,特此记录一下: spring  boot整合mybatis时,要将mapper装配到spring容器中,要在mapper接口中加上@M

从.Net到Java学习第四篇——spring boot+redis

从.Net到Java学习第一篇——开篇 从.Net到Java学习第二篇——IDEA and start spring boot 从.Net到Java学习第三篇——spring boot+mybatis+mysql 接上一篇,本篇使用到的框架redis.FastJSON. 环境准备 安装redis,下图是我本机的redis绿色版,你可以网上自行下载安装,如果不知道如何怎么操作,可以移步到我的另一篇文章:ASP.NET Redis 开发 以管理员身份打开CMD窗口: C:\Users\zouqj>e

Spring Boot 整合 Mybatis 实现 Druid 多数据源详解

一.多数据源的应用场景 目前,业界流行的数据操作框架是 Mybatis,那 Druid 是什么呢? Druid 是 Java 的数据库连接池组件.Druid 能够提供强大的监控和扩展功能.比如可以监控 SQL ,在监控业务可以查询慢查询 SQL 列表等.Druid 核心主要包括三部分: 1. DruidDriver 代理 Driver,能够提供基于 Filter-Chain 模式的插件体系. 2. DruidDataSource 高效可管理的数据库连接池 3. SQLParser 当业务数据量达

spring boot整合mybatis+mybatis-plus

Spring boot对于我来说是一个刚接触的新东西,学习过程中,发现这东西还是很容易上手的,Spring boot没配置时会默认使用Spring data jpa,这东西可以说一个极简洁的工具,可是我还是比较喜欢用mybatis,工具是没有最好的,只有这合适自己的. 说到mybatis,最近有一个很好用的工具--------mybatis-Plus(官网),现在更新的版本是2.1.2,这里使用的也是这个版本.我比较喜欢的功能是代码生成器,条件构造器,这样就可以更容易的去开发了. mybatis

spring boot 整合 mybatis

spring boot jpa的方式确实非常简单, 但是复杂系统避免不了自己写sql, 那么如果把sql写在方法的上面, 可能有些人会觉得怪异, 或者不舒服. 那么能不能将mybatis整合进spring boot , 将sql 分离出来呢. 一. pom.xml <!--mybatis--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-s

Spring Boot整合MyBatis学习总结

公司的很多项目都陆陆续续引入了Spring Boot,通过对Spring Boot的接触了解发现其真的是大大地简化了开发.简化了依赖配置,很多功能注解一下就可以实现,真的是太方便了.下面记录了一个Spring Boot的入门程序实现. 1,pom.xml文件: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&qu

spring boot 整合mybatis(好用!!!!)

springboot整合mybatis 1.pom依赖 <!-- 引入freeMarker的依赖包. --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-freemarker</artifactId> </dependency> 2.配置application.properties spri