记录创建springboot项目并配置mybatis中间件:
编程工具:IDEA
JDK版本:1.8
Maven版本:Apache Maven 3.6.3
springboot版本:2.4.4
mybatis版本:1.3.2
mysql版本:5.1.48
通过IDEA
创建很便捷,参考《IDEA创建SpirngBoot项目》。
使用mybatis需要添加依赖
<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.3.2</version> </dependency>
完整pom.xml
配置如下:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.4.4</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>org.example</groupId> <artifactId>springboot-mybatis</artifactId> <version>1.0-SNAPSHOT</version> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> <mybatis.version>1.3.2</mybatis.version> <mysql.version>5.1.48</mysql.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>${mybatis.version}</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql.version}</version> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
配置mybatis
主要配置数据表映射实体类路径type-aliases-package
和数据表映射配置文件路径mapper-locations
完整application.yml
配置如下:
在Application启动文件配置扫描持久化层的路径的注解@MapperScan
以user
表为例子,创建controller
目录、dao
目录、service
目录、model
目录以及在resources
目录下创建mapper
目录用来保存映射xml
文件。
完整代码结构如下:
映射实体类User:
持久层UserDao:
注意添加@Repository
注解
业务层UserService:
创建根据ID查询记录的接口getById(Long id);
业务层接口实现类UserServiceImpl:
注意添加@Service注解,引入
UserDao,实现根据
ID`查询记录
控制层UserController:
注入业务层接口,增加测试查询方法getUserById()
;
映射mapper文件:
其中namespace
对应持久化层dao
的路径,resultMap
为数据表字段与实体映射类属性的关联,type
为实体映射类的路径,select
查询配置中resultType
为查询结果的对象类型路径。
启动项目并访问http://localhost:8866/test
测试配置情况
application.xml
配置文件中增加日志输出sql
语句的配置:
重启项目后再次测试接口:
springboot
默认使用HikariPool
数据库连接池。