xml方式整合mybatis
xml方式整合mybatis
1.导入依赖
在pom.xml中添加依赖
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <!-- mysql驱动--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <!-- druid连接--> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid-spring-boot-starter</artifactId> <version> 1.1 . 10 </version> </dependency> <!-- mybatis--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version> 1.3 . 2 </version> </dependency> |
2.编写配置文件
2.1 准备实体类
可以在IDEA中添加database,通过两张表,可以直接创建在entity包中的实体类
连接上数据库后
这样就创建了Air和District两个类
Air.java
1 2 3 4 5 6 7 8 9 10 11 12 | @Data public class Air { private long id; private long districtId; private java.sql.Date monitorTime; private long pm10; private long pm25; private String monitoringStation; private java.sql.Date lastModifyTime; } |
District.java
1 2 3 4 5 6 7 8 | @Data public class District { private long id; private String name; } |
2.2 准备mapper接口
1 2 3 4 5 6 7 | import com.company.firstspringboot.entity.Air; import java.util.List; public interface AirMapper { List<Air> findAll(); } |
在启动类中加入扫描AriMapper接口所在的包
1 2 3 4 5 6 7 8 9 10 11 12 13 | import org.mybatis.spring.annotation.MapperScan; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication @MapperScan (basePackages = "com.company.firstspringboot.mapper" ) public class FirstSpringbootApplication { public static void main(String[] args) { SpringApplication.run(FirstSpringbootApplication. class , args); } } |
2.3 准备映射文件,创建对应mapper接口的映射文件
AirMapper.xml
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.company.firstspringboot.mapper.AirMapper"> <select id="findAll" resultType="Air"> select * from air </select></mapper>
添加yml配置信息(指定连接数据库信息和mybatis配置)
application.yml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | server: port: 8080 servlet: context-path: / # 连接数据库的信息 spring: datasource: driver- class -name: com.mysql.jdbc.Driver url: jdbc:mysql: ///air?serverTimeZone=UTC username: root password: 123456 type: com.alibaba.druid.pool.DruidDataSource # MyBatis配置 mybatis: # 扫描映射文件 mapper-locations: classpath:mapper/*.xml # 配置别名扫描的包 type-aliases- package : com.company.firstspringboot.entity configuration: # 开启驼峰映射配置 map-underscore-to-camel- case : true |
3.测试
直接在接口上右键选择GO TO,会自动创建当前接口的测试类,在test目录下
让当前测试类,继承FirstSpringbootApplicationTests测试类(注意:要在FirstSpringbootApplicationTests的class前,添加public)
AirMapperTest.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | import com.company.firstspringboot.FirstSpringbootApplicationTests; import com.company.firstspringboot.entity.Air; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import java.util.List; class AirMapperTest extends FirstSpringbootApplicationTests { @Autowired private AirMapper airMapper; @Test void findAll() { List<Air> all = airMapper.findAll(); for (Air air : all) { System.out.println(air); } } } |
结构:
来源:https://www.cnblogs.com/GumpYan/p/14752447.html