【发布时间】:2016-10-25 21:19:48
【问题描述】:
使用哪一个来跳过实体中持久存在的字段?
@Transient 用作 JPA 的一部分以忽略字段的持久性
Java 中的 transient 关键字用于指示字段应该 不被序列化和持久化(Java SE 7 版规范)
我检查了两者,并且数据库中没有生成任何列:
实体:
@Entity
public class Person implements Serializable{
private static final long serialVersionUID = 1L;
@Id@GeneratedValue(strategy=GenerationType.IDENTITY)
private long id;
private String name;
private String forname;
@Transient
private String nickName;
private transient String pseudo;
生成的表格:
【问题讨论】:
-
"transient" 与持久性无关……它是为了防止序列化,仅此而已。 “持久性”!=“序列化”