EJB JPA实例
2015-04-30 14:12
344 查看
@Entity
@Table(name = "ALERT")
@TableGenerator(name = "ALERT_GENERATOR", table = "GENERATOR_TABLE",pkColumnName="PRIMARY_KEY_COLUMN",
valueColumnName="VALUE_COLUMN",pkColumnValue="ALERT_PK",allocationSize=1)
public class Alert implements Serializable {
private static final long serialVersionUID = 1L;
/** 告警id*/
@Id
@GeneratedValue(strategy = GenerationType.TABLE, generator = "ALERT_GENERATOR")
@Column(name = "ALERTID", nullable = false)
private Long alertId;
public enum AlertStatus{
Untreated("未处理"),
Treating("处理中"),
Treated("已处理");
private String context;
public String getContext(){
return this.context;
}
private AlertStatus(String context){
this.context = context;
}
}
/** 告警名称 */
@Column(name = "NAME", length = 100, nullable = false)
private String name;
/** 告警创建时间 */
@Column(name = "CREATETIME")
@Temporal(TemporalType.TIMESTAMP)
private Date createTime;
/** 处理状态 */
@Column(name = "STATUS")
@Enumerated(EnumType.STRING)
private AlertStatus status = AlertStatus.Untreated;
}
l name属性表示该表主键生成策略的名称,它被引用在@GeneratedValue中设置的“generator”值中。
l table属性表示表生成策略所持久化的表名,例如,这里表使用的是数据库中的“tb_generator”。
l catalog属性和schema具体指定表所在的目录名或是数据库名。
l pkColumnName属性的值表示在持久化表中,该主键生成策略所对应键值的名称。例如在“tb_generator”中将“gen_name”作为主键的键值
l valueColumnName属性的值表示在持久化表中,该主键当前所生成的值,它的值将会随着每次创建累加。例如,在“tb_generator”中将“gen_value”作为主键的值
l pkColumnValue属性的值表示在持久化表中,该生成策略所对应的主键。例如在“tb_generator”表中,将“gen_name”的值为 “CUSTOMER_PK”。
l initialValue表示主键初识值,默认为0。
l allocationSize表示每次主键值增加的大小,例如设置成1,则表示每次创建新记录后自动加1,默认为50。
l UniqueConstraint与@Table标记中的用法类似
@Entity
@Table(name = "ALERT")
@TableGenerator(name = "ALERT_GENERATOR", table = "GENERATOR_TABLE",pkColumnName="PRIMARY_KEY_COLUMN",
valueColumnName="VALUE_COLUMN",pkColumnValue="ALERT_PK",allocationSize=1)
public class Alert implements Serializable {
private static final long serialVersionUID = 1L;
/** 告警id*/
@Id
@GeneratedValue(strategy = GenerationType.TABLE, generator = "ALERT_GENERATOR")
@Column(name = "ALERTID", nullable = false)
private Long alertId;
public enum AlertStatus{
Untreated("未处理"),
Treating("处理中"),
Treated("已处理");
private String context;
public String getContext(){
return this.context;
}
private AlertStatus(String context){
this.context = context;
}
}
/** 告警名称 */
@Column(name = "NAME", length = 100, nullable = false)
private String name;
/** 告警创建时间 */
@Column(name = "CREATETIME")
@Temporal(TemporalType.TIMESTAMP)
private Date createTime;
/** 处理状态 */
@Column(name = "STATUS")
@Enumerated(EnumType.STRING)
private AlertStatus status = AlertStatus.Untreated;
}
l name属性表示该表主键生成策略的名称,它被引用在@GeneratedValue中设置的“generator”值中。
l table属性表示表生成策略所持久化的表名,例如,这里表使用的是数据库中的“tb_generator”。
l catalog属性和schema具体指定表所在的目录名或是数据库名。
l pkColumnName属性的值表示在持久化表中,该主键生成策略所对应键值的名称。例如在“tb_generator”中将“gen_name”作为主键的键值
l valueColumnName属性的值表示在持久化表中,该主键当前所生成的值,它的值将会随着每次创建累加。例如,在“tb_generator”中将“gen_value”作为主键的值
l pkColumnValue属性的值表示在持久化表中,该生成策略所对应的主键。例如在“tb_generator”表中,将“gen_name”的值为 “CUSTOMER_PK”。
l initialValue表示主键初识值,默认为0。
l allocationSize表示每次主键值增加的大小,例如设置成1,则表示每次创建新记录后自动加1,默认为50。
l UniqueConstraint与@Table标记中的用法类似
相关文章推荐
- EJB之JPA(save操作)
- EJB3 JPA JPQL 语句 查询 使用 函数 分页 子查询(2)
- 一个简单的EJB-Session Bean实例
- 精彩实例讲解:用EJB开发在线课堂
- 学习JPA——Hibernate Annotation使用实例
- EJB3+JSF的简单实例
- Restful项目环境搭建实例(Jpa+Jersey+Guice)
- new InitialContext() 创建ejb实例的过程
- Spring Data JPA 实例查询
- JPA与EJB3的关系
- EJB3.0实例教程多对多映射
- JPA简单实例
- Spring Data JPA调用存储过程实例
- REST开发简单示例(jsp,jQuery,jpa,ejb,rest)
- 企业级EJB开发实例
- EJB之JPA(EntityManager)
- JPA实例讲解
- JBoss+Ant实现EJB无状态会话bean实例
- JPA 增、删、改、查入门实例
- JPA学习记录二(搭建一个JPA+hibernate实例)