您好我是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;
}
}
答案 0 :(得分:1)
差不多,是的。 JPA实现将查看您的注释,以查看您喜欢哪种样式,并使用它。
我知道,Hibernate会查看@Id
注释的位置(在字段上或方法上),并将该样式用于其余注释。我想其他JPA实现会做类似的事情,如果不相同的话。
答案 1 :(得分:0)
检查这个类似的问题: -
答案 2 :(得分:0)
我强烈建议您查看不需要任何注释或XML配置的JPersist(http://www.jpersist.com/)。比你那里的怪异要容易得多