Hibernate 和 JPA 注解方式自定义ID生成器
来源:互联网 发布:网上百家樂作弊软件 编辑:程序博客网 时间:2024/05/20 22:35
/** * Test.java * 实体类定义和配置 */package com.saving.ecm.resource.entity;import javax.persistence.Column;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.Id;import javax.persistence.Table;import javax.xml.bind.annotation.XmlRootElement;import org.hibernate.annotations.GenericGenerator;import org.hibernate.annotations.Parameter;@XmlRootElement@Entity@Table(name = "test")public class Test {@Id@GeneratedValue(generator = "idGenerator")@GenericGenerator(name = "idGenerator", strategy = "com.saving.ecm.resource.entity.IdGenerator",parameters = { @Parameter(name = "dataCenterID", value = "20") ,@Parameter(name = "idLength", value = "10")})private String code;@Column(name = "name", nullable = false, columnDefinition = "varchar(48) default '' comment '名字'")private String name;public String getCode() {return code;}public void setCode(String code) {this.code = code;}public String getName() {return name;}public void setName(String name) {this.name = name;}}
模拟自定义ID生成器
package com.saving.ecm.resource.entity;import java.io.Serializable;import java.text.SimpleDateFormat;import java.util.Date;import java.util.Properties;import org.hibernate.dialect.Dialect;import org.hibernate.engine.spi.SessionImplementor;import org.hibernate.id.AbstractUUIDGenerator;import org.hibernate.id.Configurable;import org.hibernate.type.Type;public class IdGenerator implements Configurable,IdentifierGenerator {public String dataCenterID;public String idLength;public void configure(Type type, Properties params, Dialect d) {this.dataCenterID = params.getProperty("dataCenterID");this.idLength = params.getProperty("idLength");}public Serializable generate(SessionImplementor session, Object obj) {return dataCenterID + idLength;}}
0 0
- Hibernate 和 JPA 注解方式自定义ID生成器
- Hibernate之自定义ID生成器
- JPA和Hibernate注解
- 4. JPA @Id 和 @GeneratedValue 注解详解
- JPA @Id 和 @GeneratedValue 注解详解
- Hibernate的@Id注解和@Column注解
- JPA的Id注解
- hibernate的JPA注解和hbm
- hibernate id生成器
- hibernate id 生成器
- hibernate annotaion id生成器
- hibernate中的id生成器
- hibernate id 生成器
- hibernate的ID生成器
- JPA & Hibernate 注解
- JPA hibernate 注解
- JPA & Hibernate 注解
- JPA & Hibernate 注解
- 数组指针和指针数组的区别
- iOS逆向工程之给App脱壳
- 暑假总结20160907
- java当中的定时器的4种使用方式
- 两个字符串的最长连续公共子串
- Hibernate 和 JPA 注解方式自定义ID生成器
- mybatis查询报错There is no getter for property named 'name' in 'class java.lang.String'
- html的cellpadding和cellspacing
- 解决Kendo ComboBox显示多列走样 (备忘)
- 单链表的实现
- 特征选择(三)- K-L变换
- C# 反编译-Reflector 反混淆-De4Dot 修改dll/exe代码-reflexil
- 最大公倍数
- 位运算---整数间的转化