spring boot(三) 集成mybatis
程序员文章站
2022-09-16 09:40:31
前言 随着spring boot2.0的发布。项目组的API接口已经考虑向spring boot转型。底层接口我们一直用的mybatis,所以这篇文章我特意练习了下在spring boot种集成mybatis。 一、准备工作 1、pom.xml 2、项目结构 配置文件依然放在resources目录下 ......
前言
随着spring boot2.0的发布。项目组的API接口已经考虑向spring boot转型。底层接口我们一直用的mybatis,所以这篇文章我特意练习了下在spring boot种集成mybatis。
一、准备工作
1、pom.xml
1 <dependencies> 2 <dependency> 3 <groupId>org.springframework.boot</groupId> 4 <artifactId>spring-boot</artifactId> 5 <version>2.0.0.RELEASE</version> 6 </dependency> 7 <dependency> 8 <groupId>org.springframework.boot</groupId> 9 <artifactId>spring-boot-starter-web</artifactId> 10 <version>2.0.0.RELEASE</version> 11 </dependency> 12 <dependency> 13 <groupId>com.microsoft.sqlserver</groupId> 14 <artifactId>sqljdbc4</artifactId> 15 <version>4.0</version> 16 </dependency> 17 <dependency> 18 <groupId>org.mybatis.spring.boot</groupId> 19 <artifactId>mybatis-spring-boot-starter</artifactId> 20 <version>1.3.2</version> 21 </dependency> 22 <dependency> 23 <groupId>com.alibaba</groupId> 24 <artifactId>druid</artifactId> 25 <version>1.1.9</version> 26 </dependency> 27 <dependency> 28 <groupId>org.springframework.boot</groupId> 29 <artifactId>spring-boot-starter-test</artifactId> 30 <version>2.0.0.RELEASE</version> 31 <scope>test</scope> 32 </dependency> 33 </dependencies>
2、项目结构
配置文件依然放在resources目录下,spring boot中支持properties、也支持yml的方式。
3、使用注解的方式编写UserMapper
public interface UserDao { @Select("select * from tb_user") List<User> getAllUsers(); @Select("select * from tb_user where id=#{id}") User getById(int id); @Insert("insert into tb_user(name,address) values(#{name},#{address})") void insert(User user); @Update("update tb_user set name=#{name},address=#{address} where id=#{id}") void update(User user); @Delete("delete from tb_user where id=#{id}") void delete(int id); }
启动类 Application.java。 主要是MapperScan注解,配置映射包目录com.che168.dao
@SpringBootApplication @MapperScan("com.che168.dao") public class Application { public static void main(String[] args){ SpringApplication.run(Application.class,args); } }
单元测试
@RunWith(SpringRunner.class) @SpringBootTest public class UserDaoTest { @Autowired UserDao userDao; @Test public void getAllUsers(){ List<User> allUsers=userDao.getAllUsers(); System.out.println(allUsers.size()); } @Test public void getById(){ int id=1; User model=userDao.getById(id); System.out.println("name:"+model.getName()+",address:"+model.getAddress()); } @Test public void insert(){ User user=new User(); user.setName("云龙"); user.setAddress("山西太原"); userDao.insert(user); } @Test public void update(){ User user=new User(); user.setId(4); user.setName("云龙"); user.setAddress("山西运城"); userDao.update(user); } @Test public void delete(){ userDao.delete(4); } }
二、使用配置文件的方式
配置文件的方式和我们之前在SpringMVC中集成的方式大致相同,把xml文件单独放在mapper目录下,把sql相关操作全部放在xml中, 接口用来编写方法签名,然后配置映射,在spring boot中不同的地方就是把mapper-config.xml和实体类映射文件需要配置在application.properties中,如下配置,在此就不再赘述了。
mybatis.config-locations=classpath:mybatis/mybatis-config.xml mybatis.mapper-locations=classpath:mybatis/mapper/*.xml
上一篇: BZOJ 1251: 序列终结者
下一篇: 如何在CSS中绘制曲线图形及展示动画
推荐阅读
-
Spring Boot 入门(五):集成 AOP 进行日志管理
-
Spring Boot2(二):使用Spring Boot2集成Mybatis缓存机制
-
SpringBoot 源码解析 (十)----- Spring Boot 精髓:集成AOP
-
SpringBoot 源码解析 (三)----- Spring Boot 精髓:启动时初始化数据
-
SpringBoot系列:Spring Boot集成定时任务Quartz
-
Spring Boot+mybatis多表链接查询,重复外键
-
Spring Boot 2.3.6 与 Spring kafka 集成 出错(ClassNotFoundException: org.springframework.kafka.core.Microm
-
spring boot2集成ES详解
-
Spring boot Mybatis整合构建Rest服务(超细版)
-
Spring boot集成spring session实现session共享的方法