Ash*_*til 3 java hibernate jpa
两者之间的功能区别是什么
@Entity
public class UserDetails {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "User_Id")
private int userId;
@Column(name = "User_Name", insertable = false)
private String userName;
}
Run Code Online (Sandbox Code Playgroud)
和
@Entity公共类UserDetails {
@Entity
public class UserDetails {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "User_Id")
private int userId;
@Transient
private String userName;
}
Run Code Online (Sandbox Code Playgroud)
在这两种情况下,都不会创建列.
JB *_*zet 13
@Transient意思是:这个属性根本不是持久的.它不是由JPA处理的.每次从数据库中获取实体时,该属性将为null(或者由无参数构造函数初始化的任何属性).
insertable=false表示保存实体时JPA不会在insert语句中包含该列.但它会在更新实体时,它将从数据库加载它.
请参阅http://docs.oracle.com/javaee/6/api/javax/persistence/Column.html#insertable%28%29和http://docs.oracle.com/javaee/6/api/javax/persistence /Transient.html
| 归档时间: |
|
| 查看次数: |
4635 次 |
| 最近记录: |