@Transient不可用
时间: 2023-12-07 07:03:44 浏览: 148
transient:瞬态命令
@Transient 注解用于指示某个属性不应该被持久化到数据库中。当我们使用 ORM 框架如 Hibernate 进行对象关系映射时,有时我们可能不希望某个属性被保存到数据库中,而只是作为临时数据在内存中使用。此时,可以使用 @Transient 注解来标记该属性。
当一个属性被标记为 @Transient 后,ORM 框架会忽略这个属性,不会将它保存到数据库中,也不会进行数据库查询时的映射。这在一些临时属性、计算属性或者敏感信息等情况下非常有用。
请注意,@Transient 注解可以用于字段和 getter 方法上。如果在字段上使用该注解,则表示该字段不会被持久化;如果在 getter 方法上使用,则表示该方法返回的值不会被持久化。
以下是一个示例:
```java
@Entity
public class User {
@Id
private Long id;
private String name;
@Transient
private String tempData; // 该属性将不会被持久化
// 省略 getter 和 setter 方法
}
```
在上述示例中,tempData 字段被标记为 @Transient 注解,因此它不会被保存到数据库中。
阅读全文