一起入门mybatis-plus之增删改查

前情回顾

一起入门mybatis-plus之搭建逆向工程
没有引入并配置mybaits-plus的同学可以参考上文,以及如何搭建逆向工程,专注于java代码编写。不再编写繁琐的数据库表对应的实体类和mapper等。

环境说明

  • springboot版本: 2.3.0
  • java版本:8
  • mybatis-plus版本:3.3.1
  • mysql版本:8.0

springboot整合mybatis-plus

添加依赖:


 
     com.baomidou
     mybatis-plus-boot-starter
     3.3.1
 

配置数据源

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是否正确

你可能感兴趣的:(一起入门mybatis-plus之增删改查)