Spring 以及 Spring Boot 官方都没有针对 MyBatis 有具体的支持,但对 Hibernate 的集成一直是有的。
但这并不表明 MyBatis 无法与 Spring Boot 集成,毕竟现在互联网企业,还是很流行使用MyBatis 和 Spring 。MyBatis 官方社区自身也是有 对 Spring \ Spring boot 集成做支持的,所以在技术上,两者都不存在问题。相关框架可以见 https://github.com/mybatis/spring 和https://github.com/mybatis/spring-boot-starter 。
持久层 和 ORM
Spring Data JPA、MyBatis还有Hibernate有什么区别
Spring Data JPA 生成表
在类上加入
@Entity
注解,成员变量加入注解,如@Column
,依情况而定。在 application.yml 或者 application.properties 中添加以下配置。(建议使用 .yml,看起来更加清晰)
jpa.hibernate.ddl-auto 以更细粒度的方式控制行为。以下是各属性的作用
ddl-auto: create
创建架构,销毁以前的数据。ddl-auto: create-drop
当 SessionFactory 显式关闭时,通常在应用程序停止时删除模式。ddl-auto: update
更新架构。(最常用)ddl-auto: validate
验证架构,不对数据库进行任何更改。jpa.generate-dll 作用
spring.jpa.generate-ddl = false
打开和关闭该功能,默认是关闭。与供应商无关。相关链接
Querydsl
maven 配置(添加依赖
maven 配置(添加插件,生成查询实列,之后点击 compile 即可生成实列。
Querydsl ,可以弥补 Spring Data JPA 不灵活,使用 Querydsl 查询只需要继承
QueryDslPredicateExecutor
即可