JPA中的实体类不能包含最终数据成员
我在JPA的entity类中添加了一个final数据成员,这给了我一个错误,即属性“jobBand”的java字段是final。JPA中的实体类不能包含最终数据成员,jpa,final,Jpa,Final,我在JPA的entity类中添加了一个final数据成员,这给了我一个错误,即属性“jobBand”的java字段是final。 在实体类中保留最后的字段有什么错误吗 是的,有。如果是最终字段,JPA无法填充您的字段。正如错误消息告诉您的那样,您违反了规范。@JB Nizet Ok我明白了,我只是想看看实体类中是否允许最终数据成员。如果我在最后一个数据成员上应用@Transient注释,那么就不会有任何编译错误。因此,基本上,您打算持久化的任何数据成员都不应保留为最终成员,这是规范所说的???是
在实体类中保留最后的字段有什么错误吗 是的,有。如果是最终字段,JPA无法填充您的字段。正如错误消息告诉您的那样,您违反了规范。@JB Nizet Ok我明白了,我只是想看看实体类中是否允许最终数据成员。如果我在最后一个数据成员上应用@Transient注释,那么就不会有任何编译错误。因此,基本上,您打算持久化的任何数据成员都不应保留为最终成员,这是规范所说的???是的。确切的意思是“实体类不能是最终的。实体类的任何方法或持久实例变量都不能是最终的。”。规范在这里是免费的:谢谢@JBNizet:),但我刚刚尝试过,我能够在实体类中定义final-instance方法,并且在实体的对象上也成功地调用了该方法。