使用 MySQL 和 Hibernate3 注释-6ren"> 使用 MySQL 和 Hibernate3 注释-开始一个新项目我想在 MySQL 中使用 Hibernate 注释,而不是我目前使用的配置文件。而且我似乎找不到相当于: 我尝试使用: @Id @Generate-6ren">
gpt4 book ai didi

mysql - 相当于 使用 MySQL 和 Hibernate3 注释

转载 作者:IT老高 更新时间:2023-10-29 00:04:24 26 4
gpt4 key购买 nike

开始一个新项目我想在 MySQL 中使用 Hibernate 注释,而不是我目前使用的配置文件。而且我似乎找不到相当于:

    <id name="id" type="long" >
<generator class="native"></generator>
</id>

我尝试使用:

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY, generator = "native")
private long id;

但是得到了:

org.hibernate.AnnotationException: Unknown Id.generator: native

或:

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;

给我:

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: PROCEDURE projectName.identity does not exist

是否有人成功部署了 MySQL 和 Hibernate3 注释以自动生成 id?

最佳答案

在 5.0 版之前,使用策略 AUTO 相当于在映射中使用 native。这使用了 LegacyFallbackInterpreter:

@Id
@GeneratedValue(strategy=GenerationType.AUTO)
public Long getId() {
return id;
}

从 Hibernate 5.0 开始,default interpreter is the FallbackInterpeter根据底层数据库,它将使用 SEQUENCE 生成器或 TABLE 生成器。

要使用 LegacyFallbackInterpreter,请将 hibernate.id.new_generator_mappings 设置为 false

关于mysql - 相当于 <generator class ="native"></generator> 使用 MySQL 和 Hibernate3 注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1212535/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com