2010-06-07 171 views
1

嗨我是Java持久性的新手。 我把註釋放在哪裏有關係嗎? 以下兩組代碼是否相同?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; 
} 

}

+1

可能重複[Hibernate/JPA - 註釋bean方法vs字段](http://stackoverflow.com/questions/942035/hibernate-jpa-annotating-bean-methods-vs-田) – 2010-06-07 20:38:39

回答

1

好看多了,是的。 JPA實現將查看您的註釋以查看您喜歡哪種風格,並使用它。

我知道,Hibernate會查看@Id註釋的位置(在字段或方法上),並將該樣式用於其餘註釋。我想其他JPA實現可以做類似的事情,如果不相同的話。

0

我雖然會強烈建議考慮看看JPersist(http://www.jpersist.com/),你不需要任何註釋或XML配置。更容易,然後你有那麼奇怪