@ManyToMany,name写成下划线,启动失败

来源:2-6 Theme业务及模板概念分析

慕瓜3752989

2020-03-11 01:36:38

@ManyToMany(fetch = FetchType.LAZY)
@JoinTable(name = "theme_spu", joinColumns = @JoinColumn(name = "theme_id"),
inverseJoinColumns = @JoinColumn(name = "spu_id"))
private List<Spu> spuList;

Table [theme_spu] contains physical column name [theme_id] referred to by multiple logical column names: [theme_id], [themeId]


改成驼峰后可以正常启动了,但是我发现和老师的不一样, 是我配置的有问题吗

@ManyToMany(fetch = FetchType.LAZY)
@JoinTable(name = "theme_spu", joinColumns = @JoinColumn(name = "themeId"),
inverseJoinColumns = @JoinColumn(name = "spuId"))
private List<Spu> spuList;

最后我发现表名也可以改成驼峰,也可以正常启动

@ManyToMany(fetch = FetchType.LAZY)
@JoinTable(name = "themeSpu", joinColumns = @JoinColumn(name = "themeId"),
inverseJoinColumns = @JoinColumn(name = "spuId"))
private List<Spu> spuList;


写回答

1回答

7七月

2020-03-11

这个问题是我之前课程里讲到的,有外键的冲突吧?外键一般不显示出现在JPA的模型里,当时分析过的一对多的时候分析的。

0

Java全栈工程师

从Java到全栈,开发带SKU的真实企业级电商项目(附赠整套UI框架,配套升级Vue3.0内容)

2074 学习 · 3056 问题

查看课程