嗨,我是 Java 持久性的新手。 我将注释放在哪里有关系吗? 下面两组代码是否相同?
非常感谢!!
@Entity
@Table(name="user", schema="billing")
public class User {
private long id ;
private String userName ;
private String password ;
@Id
@GeneratedValue
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
@Column(name="password", length=20)
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@Column(name="user_name",length=15)
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
}
比较:
@Entity
@Table(name="user", schema="billing")
public class User {
@Id
@GeneratedValue
private long id ;
@Column(name="user_name",length=15)
private String userName ;
@Column(name="password", length=20)
private String password ;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
}
最佳答案
差不多,是的。 JPA 实现将查看您的注释以了解您喜欢哪种样式,并使用它。
据我所知,Hibernate 会查看 @Id
注释的位置(在字段上或在方法上),并为其余注释使用该样式。我想其他 JPA 实现会做类似的事情,即使不一样。
关于Java持久化问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2992788/