UUID package blogspojo;import javaioSerializable;import javaxpersistenceColumn;import javaxpersistenceEntity;import javaxpersistenceGeneratedValue;import javaxpersistenceGenerationType;import javaxpersistenceId;import javaxpersistenceTable;import orghibernateannotationsGenericGenerator;/** * 定义这是一个entityBean * * @author asus * */@Entity@Table(name = person)// 映射表名称为personpublic class Person implements Serializable {// 实现可序列化接口方便远程调用 /** * 由于EJB不支持UUID所以我们需要用hiberante生成所以我们需要在类路径下面添加一个包 * 这个包在JBOSSHOME\common\lib下的hibernateannotationsjar把这个包引入就可以了 */ @Id @GeneratedValue(generator=uuidgenerator) @GenericGenerator(name=uuidgeneratorstrategy=uuid) private String id; @Column(name = username unique = false) private String name; @Column(name = password nullable = false) private String passwd; public String getId() { return id; } public void setId(String id) { thisid = id; } public String getName() { return name; } public void setName(String name) { thisname = name; } public String getPasswd() { return passwd; } public void setPasswd(String passwd) { thispasswd = passwd; }} table映射策略 table策略的好处就是方便数据移植所有的数据库都支持 使用table策略主键必须是int或者Long类型不能是String类型 package blogspojo;import javaioSerializable;import javaxpersistenceColumn;import javaxpersistenceEntity;import javaxpersistenceGeneratedValue;import javaxpersistenceGenerationType;import javaxpersistenceId;import javaxpersistenceTable;import javaxpersistenceTableGenerator;/** * 定义这是一个entityBean * * @author asus * */@Entity@Table(name = person)// 映射表名称为personpublic class Person implements Serializable {// 实现可序列化接口方便远程调用 /** * Table生成策略 * * T_ID_GEN表 * * ID_COULMN_NAME NEXT_ID * User_ID * Person_ID * 不同的类的ID * */ @Id @TableGenerator( name=userGenerator //定义Table策略的名称 table=T_ID_GEN //定义在Table策略中使用的表名数据库会自动建表 pkColumnName=ID_COLUMN_NAME //用来区分不同的表的ID的字段名称 pkColumnValue=/archive////User_ID //用来区分不同的表的ID的值 也就是不同的类要有不同的id_coulmn_name valueColumnName=NEXT_ID //下一个ID的值所存放的字段的名称 allocationSize= //ID的递增值如果是 第一条数据的ID就是第条是 //如果值为第一条数据是第条是第条是 ) @GeneratedValue(strategy=GenerationTypeTABLEgenerator=userGenerator) private int id; @Column(name = username unique = false) private String name; @Column(name = password nullable = false) private String passwd; public int getId() { return id; } public void setId(int id) { thisid = id; } public String getName() { return name; } public void setName(String name) { thisname = name; } public String getPasswd() { return passwd; } public void setPasswd(String passwd) { thispasswd = passwd; }} 以上就是关于UUID和TABLE策略下一章是关于属性映射 |