Hibernate注解学习

Hibernate注解学习

ID:40555599

大小:15.73 KB

页数:8页

时间:2019-08-04

Hibernate注解学习_第1页
Hibernate注解学习_第2页
Hibernate注解学习_第3页
Hibernate注解学习_第4页
Hibernate注解学习_第5页
资源描述:

《Hibernate注解学习》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、*@author小郑1*@contentejb3注解的API定义在javax.persistence.*包里面。2*注释说明:3*@Entity——将一个类声明为一个实体bean(即一个持久化POJO类)4*@Id——注解声明了该实体bean的标识属性(对应表中的主键)。5*@Table——注解声明了该实体bean映射指定的表(table),目录(catalog)和schema的名字6*@Column——注解声明了属性到列的映射。该注解有如下的属性*name可选,列名(默认值是属性名)*unique可选,是否在该列上设置唯一约束(默认值false)*nullable可选,是否设置该列的值可

2、以为空(默认值false)*insertable可选,该列是否作为生成的insert语句中的一个列(默认值true)*updatable可选,该列是否作为生成的update语句中的一个列(默认值true)*columnDefinition可选,为这个特定列覆盖sqlddl片段(这可能导致无法在不同数据库间移植)*table可选,定义对应的表(默认为主表)*length可选,列长度(默认值255)*precision可选,列十进制精度(decimalprecision)(默认值0)*scale可选,如果列十进制数值范围(decimalscale)可用,在此设置(默认值0)7*@Generat

3、edValue——注解声明了主键的生成策略。该注解有如下属性*strategy指定生成的策略(JPA定义的),这是一个GenerationType。默认是GenerationType.AUTO*GenerationType.AUTO主键由程序控制*GenerationType.TABLE使用一个特定的数据库表格来保存主键*GenerationType.IDENTITY主键由数据库自动生成(主要是自动增长类型)*GenerationType.SEQUENCE根据底层数据库的序列来生成主键,条件是数据库支持序列。(这个值要与generator一起使用)*generator指定生成主键使用的生成

4、器(可能是orcale中的序列)。*@SequenceGenerator——注解声明了一个数据库序列。该注解有如下属性*name表示该表主键生成策略名称,它被引用在@GeneratedValue中设置的“gernerator”值中*sequenceName表示生成策略用到的数据库序列名称。*initialValue表示主键初始值,默认为0.*allocationSize每次主键值增加的大小,例如设置成1,则表示每次创建新记录后自动加1,默认为50.1*@GenericGenerator——注解声明了一个hibernate的主键生成策略。支持十三种策略。该注解有如下属性*name指定生成器名

5、称*strategy指定具体生成器的类名(指定生成策略)。*parameters得到strategy指定的具体生成器所用到的参数。2*其十三种策略(strategy属性的值)如下:*1.native对于orcale采用Sequence方式,对于MySQL和SQLServer采用identity(处境主键生成机制),3*native就是将主键的生成工作将由数据库完成,hibernate不管(很常用)*例:@GeneratedValue(generator="paymentableGenerator")*GenericGenerator(name="paymentableGenerator",

6、strategy="native")4*2.uuid采用128位的uuid算法生成主键,uuid被编码为一个32位16进制数字的字符串。占用空间大(字符串类型)。*例:@GeneratedValue(generator="paymentableGenerator")*@GenericGenerator(name="paymentableGenerator",strategy="uuid")1*3.hilo要在数据库中建立一张额外的表,默认表名为hibernate_unque_key,默认字段为integer类型,名称是next_hi(比较少用)*例:@GeneratedValue(gene

7、rator="paymentableGenerator")*@GenericGenerator(name="paymentableGenerator",strategy="hilo")2*4.assigned在插入数据的时候主键由程序处理(很常用),这是元素没有指定时的默认生成策略。等同于JPA中的AUTO。*例:@GeneratedValue(generator="paymentableGener

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。