admin管理员组文章数量:1130349
让我回答这个问题:
首先,使用注释作为我们的配置方法只是一个方便的方法,而不是应对无尽的XML配置文件。
@Idannotation继承自javax.persistence.Id,表示下面的成员字段是当前实体的主键。因此,你的Hibernate和spring框架以及你可以做一些反射基于这个注释的作品。详情请查询javadoc for Id
@GeneratedValue注释是配置指定列(字段)增量的方式。例如,当使用Mysql时,您可以在表的定义中指定auto_increment以使其自增量,然后使用
@GeneratedValue(strategy = GenerationType.IDENTITY)
在Java代码中表示您也承认使用此数据库服务器端策略。此外,您可以更改此注释中的值以适应不同的要求。
1.在数据库中定义序列
例如,Oracle必须使用序列作为增量方法,假设我们在Oracle中创建一个序列:
create sequence oracle_seq;
2.参考数据库序列
现在我们在数据库中有序列,但是我们需要建立Java和DB之间的关系,通过使用@SequenceGenerator:
@SequenceGenerator(name="seq",sequenceName="oracle_seq")
sequenceName是Oracle中序列的真实名称,name是您要在Java中调用它的名称。如果它不同于name,你需要指定sequenceName,否则只需使用name。我通常忽略sequenceName来节省我的时间。
3.在Java中使用序列
最后,是时候在Java中使用这个序列。只需添加@GeneratedValue:
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="seq")
生成器字段指的是要使用的序列生成器。请注意,它不是DB中的实际序列名称,而是您在SequenceGenerator的name字段中指定的名称。
4.完成
所以完整的版本应该是这样的:
public class MyTable
{
@Id
@SequenceGenerator(name="seq",sequenceName="oracle_seq")
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="seq")
private Integer pid;
}
现在开始使用这些注释,使您的JavaWeb开发更容易。
让我回答这个问题:
首先,使用注释作为我们的配置方法只是一个方便的方法,而不是应对无尽的XML配置文件。
@Idannotation继承自javax.persistence.Id,表示下面的成员字段是当前实体的主键。因此,你的Hibernate和spring框架以及你可以做一些反射基于这个注释的作品。详情请查询javadoc for Id
@GeneratedValue注释是配置指定列(字段)增量的方式。例如,当使用Mysql时,您可以在表的定义中指定auto_increment以使其自增量,然后使用
@GeneratedValue(strategy = GenerationType.IDENTITY)
在Java代码中表示您也承认使用此数据库服务器端策略。此外,您可以更改此注释中的值以适应不同的要求。
1.在数据库中定义序列
例如,Oracle必须使用序列作为增量方法,假设我们在Oracle中创建一个序列:
create sequence oracle_seq;
2.参考数据库序列
现在我们在数据库中有序列,但是我们需要建立Java和DB之间的关系,通过使用@SequenceGenerator:
@SequenceGenerator(name="seq",sequenceName="oracle_seq")
sequenceName是Oracle中序列的真实名称,name是您要在Java中调用它的名称。如果它不同于name,你需要指定sequenceName,否则只需使用name。我通常忽略sequenceName来节省我的时间。
3.在Java中使用序列
最后,是时候在Java中使用这个序列。只需添加@GeneratedValue:
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="seq")
生成器字段指的是要使用的序列生成器。请注意,它不是DB中的实际序列名称,而是您在SequenceGenerator的name字段中指定的名称。
4.完成
所以完整的版本应该是这样的:
public class MyTable
{
@Id
@SequenceGenerator(name="seq",sequenceName="oracle_seq")
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="seq")
private Integer pid;
}
现在开始使用这些注释,使您的JavaWeb开发更容易。
本文标签: 注释IdMySQLsequencegeneratorjavaGeneratedValue
版权声明:本文标题:mysql sequencegenerator_java – 什么是注释@Id和@GeneratedValue(strategy = GenerationType.IDENTITY)的使用?为什么ge... 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://it.en369.cn/jiaocheng/1754915690a2741295.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。


发表评论