SpringBoot整合Mybtis需要导入某些依赖
Druid (是一个数据库连接池)
com.alibaba
druid-spring-boot-starter
1.1.10
数据库使用的是mysql所以还需要导入mysql数据库连接驱动
spring:
datasource:
druid:
url: jdbc:mysql://ip:port/dbname?useUnicode=true&characterEncoding=utf-8&useSSL=false
username: root
password: 123456
initial-size: 1
min-idle: 1
max-active: 20
test-on-borrow: true
# MySQL 8.x: com.mysql.cj.jdbc.Driver
driver-class-name: com.mysql.jdbc.Driver
整合tkmybatis tkmybatis:mybatis的升级版
tk.mybatis
mapper-spring-boot-starter
2.0.2
mybatis的配置
mybatis:
type-aliases-package: 实体类的存放路径,如:com.funtl.hello.spring.boot.entity #映射实体类
mapper-locations: classpath:mapper/*.xml #扫描mybatis的xml文件
整合 PageHelper
PageHelper 是 Mybatis 的分页插件,支持多数据库、多数据源。可以简化数据库的分页查询操作,整合过程也极 其简单,只需引入依赖即可。
com.github.pagehelper
pagehelper-spring-boot-starter
1.2.5
使用Mybatis的Maven插件生成代码
插件配置
org.mybatis.generator
mybatis-generator-maven-plugin
1.3.5
${basedir}/src/main/resources/generator/generatorConfig.xml
true
true
mysql
mysql-connector-java
${mysql.version}
tk.mybatis
mapper
3.4.4
节点
(其实就是mybatis的逆向工程)
所以在 /resources/generator/ 下创建generatorConfig.xml 文件配置数据源
那么在 generatorConfig.xml中应该怎么样配置呢
数据源的配置
# MySQL 8.x: com.mysql.cj.jdbc.Driver
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.connectionURL=jdbc:mysql://ip:port/dbname?useUnicode=true&characterEncoding=utf-8&useSSL=false
jdbc.username=root
jdbc.password=root
然后双击插件重构 ok
如果控制台遇到这个错误
Failed to execute goal org.mybatis.generator:mybatis-generator-maven-plugin:1.3.5:generate (default-cli) on project hello-spring-boot-mybatis: The server time zone value '�й���ʱ��' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support. -> [Help 1] (主要是由于时区配置导致的问题)
请将数据库配置文件中jdbc.connectionURL改为
jdbc.connectionURL=jdbc:mysql://localhost:3306/dbname?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai