使用javax.persistence注解配置PO對象


JPA注解持久化類很方便,需要jar包:ejb3-persistence.jar下載

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import org.hibernate.annotations.Parameter;

@Entity
@org.hibernate.annotations.GenericGenerator(name = "S_USER_ID", strategy = "sequence", parameters = { 
             @Parameter(name = "sequence", value = "S_USER_ID") })  
@Table(name = "USER")
public class ContractAttachPO  implements Serializable{

    /**
     * 序列號版本
     */
    private static final long serialVersionUID = 1393027357708703114L;
    
    // Fields
    
    /**
     * 合同id.
     */
    private Long userId;

    /**
     * 用戶名.
     */
    private String userName;
    

    
    // Property accessors
    
    /**
     * 獲取 .
     */
    @Id
    @GeneratedValue(generator = "S_USER_ID")
    @Column(name = "USER_ID", precision = 16, scale = 0)
    public Long getUserId() {
        return userId;
    }

    /**
     * 設置 .
     */
    public void setUserId(Long userId) {
        this.userId = userId;
    }

    /**
     * 獲取 .
     */
    @Column(name = "USER_NAME")
    public String getUserName() {
        return userName;
    }

    /**
     * 設置 .
     */
    public void setUserName(Long userName) {
        this.userName = userName;
    }
}
    注釋說明:
       1.@Entity  //說明此java類是實體類 
       2.@org.hibernate.annotations.GenericGenerator(name = "S_USER_ID", strategy = "sequence",
parameters = { @Parameter(name = "sequence", value = "S_USER_ID") }) 導入import org.hibernate.annotations.Parameter,是自動生成oracle序列的方法。調用創建好的序列:S_USER_ID來自動生成。 3.@Id //說明是主鍵(@Id此注解不能省略,不然Hibernate在調用po進行ORM操作的時候,會出現錯誤,千萬不要認為主鍵不是自增,就不用指定主鍵了) @GeneratedValue(generator = "S_USER_ID") //主鍵的生成方式 4.@Table(name = "USER") //指定數據庫對應的表 5.@Column(name = "USER_NAME") //數據庫字段和類屬性對應關系 @Column注解配置項還有很多,具體可以了解javax.persistence的注解說明

***** 如果對PO(簡單java對象)不了解可以查看前面

POJO(PO)與javaBean的比較、以及DTO的說明

 在不經意間看了這一篇注解的詳細,寫得非常詳細,可以參考一下http://www.cnblogs.com/yangy608/archive/2012/09/25/2701514.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM