javax.persistence字段,getter或setter的注释?
发布时间:2020-12-14 05:32:24 所属栏目:Java 来源:网络整理
导读:我正在学习Hibernate和 Java Persistence API. 我有一个@Entity类,需要对各个字段应用注释.我已经在下面的代码中列出了他们可以去的三个地方. 我应该把它们应用到场地本身,吸气剂还是吸气器?这三个选项之间的语义差异(如果有的话)是甚么. import javax.pers
我正在学习Hibernate和
Java Persistence API.
我有一个@Entity类,需要对各个字段应用注释.我已经在下面的代码中列出了他们可以去的三个地方. 我应该把它们应用到场地本身,吸气剂还是吸气器?这三个选项之间的语义差异(如果有的话)是甚么. import javax.persistence.Entity; import javax.persistence.Table; import javax.persistence.Id; @Entity @Table(name = "song") public class Song { // Annotations should only be applied to one of the below @Id @Column(name="id",unique=true,nullable=false) private int id; @Id @Column(name="id",nullable=false) public int getId() { return id; } @Id @Column(name="id",nullable=false) public void setId(int id) { this.id = id; } } 解决方法
你必须在现场和吸气剂之间进行选择.不支持设置器上的注释.所有注释都应该在字段上,或者它们都应该在getter上:你不能混合使用这两种方法(除非使用
@AccessType 注释).
关于哪一个更喜欢,答案是:这取决于.我更喜欢现场访问,但是YMMV,并且在某些情况下,财产访问是最喜欢的.见Hibernate Annotations – Which is better,field or property access?. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |