使用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的说明