博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JPA @Id 和 @GeneratedValue 注解详解
阅读量:4316 次
发布时间:2019-06-06

本文共 615 字,大约阅读时间需要 2 分钟。

JPA @Id 和 @GeneratedValue 注解详解

@Id: 

@Id 标注用于声明一个实体类的属性映射为数据库的主键列。该属性通常置于属性声明语句之前,可与声明语句同行,也可写在单独行上。 
@Id标注也可置于属性的getter方法之前。

@GeneratedValue: 

@GeneratedValue 用于标注主键的生成策略,通过strategy 属性指定。默认情况下,JPA 自动选择一个最适合底层数据库的主键生成策略:SqlServer对应identity,MySQL 对应 auto increment。 
在javax.persistence.GenerationType中定义了以下几种可供选择的策略: 
–IDENTITY:采用数据库ID自增长的方式来自增主键字段,Oracle 不支持这种方式; 
–AUTO: JPA自动选择合适的策略,是默认选项; 
–SEQUENCE:通过序列产生主键,通过@SequenceGenerator 注解指定序列名,MySql不支持这种方式 
–TABLE:通过表产生主键,框架借由表模拟序列产生主键,使用该策略可以使应用更易于数据库移植。

推荐的两种写法: 

属性之上:

getter方法之上:

 

但是不能某个注解在属性之上,某个注解在getter之上,将抛出异常,对其他注解也相同

  1.  

转载于:https://www.cnblogs.com/mark5/p/10929137.html

你可能感兴趣的文章
Unity中用触摸控制物体旋转和放大
查看>>
hibernate
查看>>
appium环境安装
查看>>
uva 10859
查看>>
ssm整合-动态项目-day13
查看>>
Visual Studio Debug
查看>>
Souerce 之 图片格式
查看>>
PD 之 连接数据库并导出数据及生成PDM文件
查看>>
Java IO 操作
查看>>
SharePoint 2010 Warmup server script
查看>>
单变量微积分笔记6——线性近似和二阶近似
查看>>
补几天前的读书笔记
查看>>
HDU 1829/POJ 2492 A Bug's Life
查看>>
[UOJ UR#16]破坏发射台
查看>>
修改spring boot 启动logo
查看>>
《Android深度探索》第六章心得体会
查看>>
jQuery绑定键盘事件
查看>>
java中的for嵌套(一个好例子)
查看>>
MathML
查看>>
SQL 排名函数
查看>>