jakarta-ee - @Transient 注释对方法意味着什么?

标签 jakarta-ee jpa annotations transient

所以我了解到transient Java 中的关键字表示实体不会持久化,并且 @Transient JPA 中的注释意味着不要将字段持久化到数据库中。但是 @Transient 是什么意思?应用于方法而不是变量?

这是我在我们的代码中找到它的地方:

@Transient
public boolean getTabFoo() {
    if ((this.viewFoo1 != ACCESS_NONE)
            || (this.viewFoo2 != ACCESS_NONE) || (this.viewFoo3 != ACCESS_NONE)
            || (this.getViewFoo4() != ACCESS_NONE)) {
        return true;
    }
    return false;
}

最佳答案

所有字段级 JPA 注释都可以放置在字段或属性上,它确定实体的访问类型(即 JPA 提供程序将如何访问该实体的字段 - 直接或使用 getter/setter)。

默认访问类型由 @Id 的位置决定注释,并且它应该对实体的所有字段(或继承实体的层次结构)保持一致,除非被 @Access 显式覆盖。对于某些领域。

所以,@Transient getter 上的含义与 @Transient 相同在字段上 - 如果您的实体的默认访问类型是属性访问,您需要使用 @Transient 注释所有与持久属性不对应的 getter .

关于jakarta-ee - @Transient 注释对方法意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21477034/

相关文章:

annotations - matplotlib的同一个注释中的不同字体大小?

java - 如何判断我的网站被访问的IP地址?

java - 使用路径变量进行 GET 映射的自定义验证

java - 异步 Servlet 与同步 Servlet

java - 使用 Spring/Hibernate 进行密码加密 - Jasypt 或其他?

hibernate - 为什么 JPA 中 @SequenceGenerator 注释的默认 allocationSize 属性是 50?

JPA 和 java 8 日期 API - 选择正确的实现(Instant、LocalDateTime、ZonedDateTime)

java - 将 JAXB 与包含许多相同元素的 XML 文件一起使用

jakarta-ee - Jakarta EE 9 上的 Primefaces,错误 javax/servlet/ServletRequestListener

java - Bean 验证 : How to localize messages programmatically?