由于依赖关系升级:
- spring-boot-starter-parent:2.7.1 -〉3.0.0
- mysql:mysql-connector-java -〉com.mysql:mysql-connector-j
我开始使用hibernate-core-6.1.5
和他的新策略来给予表命名。所以现在测试被破坏了,因为当我想把数据保存到某个表时,一个“_SEQ”被添加到表的名称中,测试找不到表。
我发现了一些来源:
- https://thorben-janssen.com/things-to-know-when-migrating-to-hibernate-6-x/#3_New_naming_strategy_for_default_sequences
- https://www.baeldung.com/hibernate-entitymanager
- xmlns, xmlns:xsi, xsi:schemaLocation, and targetNamespace?
- https://github.com/spring-projects/spring-data-jpa/issues/2717
- https://github.com/spring-projects/spring-framework/wiki/Upgrading-to-Spring-Framework-6.x
为了绕过这个问题,我在每个实体中指定策略:
@Entity
@Table(name = "animal")
public class Animal {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY) // this will overwrite SEQUENCE
@Column(name = "id")
private Long id;
这可以在application.yml中完成吗?
1条答案
按热度按时间vxf3dgd41#
多亏了M. Deinum,问题才得以解决。
现在我的application.yml是: