gpt4 book ai didi

java - Hibernate 注释——在字段声明之前或 getter-setter 之前

转载 作者:太空宇宙 更新时间:2023-11-04 12:45:04 27 4
gpt4 key购买 nike

在 Hibernate 中,放置 @Id 注解在字段声明本身之前

@Id
private int id;

以及其 getter 和 setter 之前

@Id
public int getId() { return this.id; }
public int setId(..) { .. }

是两个不同的东西。如果 getter/setter 中有一些处理,这种差异就会生效。

问题是,非关键字段(没有 @Id 注释的字段)是否存在这样的问题?

我的关键字段未经过任何处理。然而,除其他外,我有一些字段在设置之前验证/更改值。对于这些字段,我应该将注释放在它们的 getter-setter 之前吗?

据我观察,我并没有撞到砖墙。然而——想确定一下。

TIA。

注意:看到了有用的讨论:Where to put hibernate annotations? .

最佳答案

对于非关键字段来说没有问题,但我个人更喜欢字段注释,特别是如果您不必在实体级别上执行一些业务逻辑:代码更干净,所有与数据库相关的内容都在类的开头,equals 方法不会有奇怪的问题(它总是使用字段 - 这发生在我身上)另外,如果您有其他与数据库处理不严格相关的方法,则必须将它们设置为 @Transient

关于java - Hibernate 注释——在字段声明之前或 getter-setter 之前,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36414510/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com