spring cloud整合mybatis学习中遇到的坑

1.使用通用mapper时
实体类的mapper接口(即普通的dao接口)继承了通用mapper接口后,
在依赖注入实体类的mapper接口时候,使用@Autowired注解报错
替换成@Resource就好了

2.application.yml配置文件中配置数据源时
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/mybatis
直接如上所示配置,如果连接的MySQL版本比较高,会报时区错误
因此需要加上额外的信息
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/mybatis?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC&useSSL=false&allowMultiQueries=true
这样就不会报错了

3.
通用mapper会将实体类中对应数据表字段的属性值,驼峰命名的,转换成_小写字母
所以MySQL数据库中的mybatis数据库的user数据表中userName字段
在对应实体类的时候,String userName,上要添加@Column(name="userName"),
不加@Column注解,通用mapper插件会将驼峰命名的属性名userName转换成user_name(数据表字段),这样与数据表中的字段usrName就不匹配了。

发布了74 篇原创文章 · 获赞 20 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/u011174699/article/details/101085475
今日推荐