前情回顾
一起入门mybatis-plus之搭建逆向工程
没有引入并配置mybaits-plus的同学可以参考上文,以及如何搭建逆向工程,专注于java代码编写。不再编写繁琐的数据库表对应的实体类和mapper等。
环境说明
- springboot版本: 2.3.0
- java版本:8
- mybatis-plus版本:3.3.1
- mysql版本:8.0
springboot整合mybatis-plus
添加依赖:
<!--springboot整合mybatis-plus-->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.3.1</version>
</dependency>
配置数据源
application.yml
server:
port: 8080
#databse config
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/数据库?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=GMT
username: root用户名
password: root用户密码
type: com.zaxxer.hikari.HikariDataSource
- driver-class-name 驱动使用com.mysql.cj.jdbc.Driver,com.mysql.jdbc.Driver已经过期
- type 数据连接池推荐使用HikariDataSource,比druid性能更好,也是推荐的版本。性能方面 hikari>druid>tomcat-jdbc>dbcp>c3p0 。hikari可以最大限度的避免锁竞争。
mapper注入
@MapperScan("com.hugo.talk.ssm.repository.mapper")
@SpringBootApplication
@MapperScan("com.hugo.talk.ssm.repository.mapper")
public class MyBatisPlusApplication {
public static void main(String[] args) {
SpringApplication.run(MyBatisPlusApplication.class, args);
}
}
- 注意整合mybatis时,对mapper的注入不要忘记用@MapperScan扫描。
增删改查
增加日志
application.yml增加mybatis-plus配置:
mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
问题记录
1.com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value '�й���ʱ��' is unrecognized or represents more than one time zone.
解决方法:说明你使用的是mysql8.0版本,在配置数据源的额时候,需要再加上参数,指定时区:serverTimezone=GMT
url: jdbc:mysql://localhost:3306/数据库?useUnicode=true&useSSL=false&characterEncoding=utf8&serverTimezone=GMT
2.org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):
- 查看mybatis-plus相关依赖是否缺少
- 查看@MapperScan扫描路径是否正确
- 查看xxxMapper.xml文件中,namespace是否正确
网友评论