![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
javax.persistence
文章平均质量分 76
DN-CS BISHA
来自星星的我
展开
-
@Entity注解
[@Entity] 必须与@Id注解 结合使用 否则 No identifier specified for entity: name 属性 (可选)实体名称。 缺省为实体类的非限定名称。 该名称用于引用查询中的实体。 该名称不能是Java持久性查询语言中的保留字面值。 不与@Table结...原创 2018-06-23 14:04:38 · 45568 阅读 · 1 评论 -
@PreUpdate 和 @PrePersist
[@PreUpdate 和 @PrePersist] 用于为相应的生命周期事件指定回调方法。 给一张表加上create_date, update_date两个字段,想实现自动保存,更新这两个字段 只能用来注解 方法(且无返回 无参数) 而不能注解 属性package sun.rain.amazing.javax.anno.domain.mapped;import lom...原创 2018-06-26 17:52:32 · 4369 阅读 · 0 评论 -
@MappedSuperclass
[@MappedSuperclass]指定其映射信息应用于从其继承的实体的类。映射的超类没有为其定义单独的表。使用MappedSuperclass 注释指定的类可以按照与实体相同的方式进行映射, 但映射仅适用于其子类,因为映射的超类本身不存在任何表。 当应用于子类时,继承的映射将应用于子类表的上下文中。 通过使用AttributeOverride和 AssociationOverrid...原创 2018-06-26 17:50:55 · 1343 阅读 · 0 评论 -
@AttributeOverrides 和 @AttributeOverride
[@AttributeOverrides 和 @AttributeOverride] 用于覆盖多个属性或字段的映射。@AttributeOverride Column column (必需)被映射到持久属性的列。 String name (必填)如果正在使用基于属性的访问,则映射被覆盖的属性的名称, ...原创 2018-06-26 17:47:26 · 5536 阅读 · 0 评论 -
@EmbeddedId
[@EmbeddedId]1、应用于实体类或映射超类的持久字段或属性,以表示可嵌入类的组合主键。 可嵌入的类必须标注为Embeddable。2、使用EmbeddedId批注时,只能有一个EmbeddedId批注和没有Id批注。3、AttributeOverride注解可用于覆盖可嵌入类中声明的列映射。4、MapsId注释可以与EmbeddedId注释一起使用以指定派生的主键...原创 2018-06-26 17:39:40 · 7267 阅读 · 0 评论 -
@Embedded 和 @Embeddable
[@Embedded 和 @Embeddable]指定其值为可嵌入类实例的实体的持久字段或属性。 可嵌入类必须标注为Embeddable。 @Embedded 用来修饰 对象属性(引用类型 -- 类对象 -- 属性注解) @Embeddable 用来修饰 类(类注解) 用来复用类对象的属性 可使用 @AttributeOverrides 来进行重写 如 AttributeOve...原创 2018-06-23 14:42:15 · 6098 阅读 · 0 评论 -
@Lob
[@Lob]指定持久属性或字段应作为大对象持久保存到数据库支持的大对象类型。映射到数据库Lob类型时,便携式应用程序应使用Lob注释。 当元素集合值是基本类型时,Lob注释可以与Basic注释或ElementCollection注释一起使用。 Lob可以是二进制或字符类型。Lob类型是根据持久性字段或属性的类型推断的,除了字符串和基于字符的类型以外,默认为Blob。 Stri...原创 2018-06-23 14:33:46 · 14451 阅读 · 1 评论 -
@Transient
[@Transient] - 可选,表示该属性并非一个到数据库表的字段的映射,ORM 框架将忽略该属性,如果 一个属性并非数据库表的字段映射,就务必将其标示为@Transient, 否则 ORM 框架默认其注解为 @Basic 该注解最好用在属性上 , 而不是方法上 示例 : // 根据 birth 计算出 age 属性 @Transie...原创 2018-06-23 14:31:10 · 1212 阅读 · 0 评论 -
@Temporal
[@Temporal] - 用于定义映射到数据库的时间精度: @Temporal(TemporalType=DATE) 日期 @Temporal(TemporalType=TIME) 时间 @Temporal(TemporalType=TIMESTAMP) 两者兼具 【注意】此注解仅适用于 属性 为 java.util.Date 和 java.util.Calend...原创 2018-06-23 14:27:52 · 814 阅读 · 0 评论 -
@Basic
[@Basic] 用于声明属性的存取策略: 表示一个简单的属性到数据库表的字段的映射,对于没有任何标注的 getXxxx()方法, 默认即为@Basic @Basic(fetch=FetchType.EAGER) 即时获取(默认的存取策略) @Basic(fetch=FetchType.LAZY) 延迟获取 @Basic(optional=fa...原创 2018-06-23 14:25:59 · 1197 阅读 · 0 评论 -
@Version
[@Version] 可以在实体 bean 中使用@Version 注解,通过这种方式可添加对乐观锁定的支持 一个类中只能有一个@Version注解 注意此属性 不能用 String 可取值 int Integer Long org.hibernate.type.StringType cannot be cast to ...原创 2018-06-23 14:22:41 · 13575 阅读 · 0 评论 -
@Column
[@Column] 用于指定列的相关属性 name - 可选,表示数据库表中列的名称。 默认为属性或字段名称。 nullable - 可选,表示该字段是否允许为 null,默认为 true(null) 若设置为false 则该列不可为null值 unique - 可选,表示该字段是否是唯一标识,默认为 false(不唯一)...原创 2018-06-23 14:19:17 · 9060 阅读 · 0 评论 -
@Id @GeneratedValue
[@Id @GeneratedValue(strategy = GenerationType.IDENTITY)] 用于指定 主键列 和 主键增长策略 @GeneratedValue(strategy = GenerationType.IDENTITY) -- MySQL 属性: Strategy - 表示主键生成策略,取值有: > Generatio...原创 2018-06-23 14:14:17 · 1788 阅读 · 0 评论 -
@Table
[@Table] 常用的两个属性* name 用来命名 当前实体类 对应的数据库 表的名字* uniqueConstraints 用来批量命名唯一键 其作用等同于多个 @Column(unique = true) @Table(name="an_user_table", uniqueConstraints = { @Uniq...原创 2018-06-23 14:07:46 · 10249 阅读 · 0 评论 -
@ElementCollection
[@ElementCollection]定义基本类型或可嵌入类的实例的集合。如果集合要通过集合表进行映射,则必须指定它。 FetchType fetch (可选)集合是否应该被延迟加载,或者是否必须急于提取。 默认: javax.persistence.FetchType.LAZY Class targetClass (可选)作...原创 2018-06-26 17:57:12 · 10759 阅读 · 0 评论