oracle springboot+mybatis 自动建表遇到的坑
1.springboot 2.0以上的包有javax.persistence 2.0 的包, 而tk.mybatis 的包里自带了 javax.persistence 1.0 的包,出现了冲突。
需要在build.gradle 文件中做
compile ('tk.mybatis:mapper-spring-boot-starter:2.1.4') {
exclude group: 'javax.persistence'
}
2.Oracle 在实体类中不支持 GenerationType.IDENTITY的自增长形式
MYSQL不支持GenerationType.SEQUENCE
TABLE:使用一个特定的数据库表格来保存主键。
SEQUENCE:根据底层数据库的序列来生成主键,条件是数据库支持序列。
IDENTITY:主键由数据库自动生成(主要是自动增长型)
AUTO:主键由程序控制。
@Column(
name = "ID"
)
// @GeneratedValue(
// strategy = GenerationType.IDENTITY
// )
@GeneratedValue(strategy = GenerationType.SEQUENCE,generator="UUID")
private String id;
3.在启动类中 添加
@EntityScan("com.data") //当启动类与entity包不在同一个包内时
@SpringbootApplication
public class Application