读书人

Hibernate基础之6:联合主键@Embedded

发布时间: 2012-11-21 08:23:26 作者: rapoo

Hibernate基础之六:联合主键@EmbeddedId


一:联合主键类

联合主键就是靠多个属性一起来决定主键
所以要新建主键类,其中要实现
1.Serializable //主键需要传递
2.equals(Object o) //靠主键区分pk,所以必须

3.hashCode()//根据pk的哈希码去查找,所以必须

Session session = HibernateUtil.getSessionFactory().getCurrentSession();        session.beginTransaction();                        TeacherPK pk = new TeacherPK();//组装联合主键        pk.setId(250);        pk.setName("张三");        Teacher t = new Teacher();        t.setPk(pk); //set联合主键t.setAge(0);t.setBirthday(new Date());t.setGrade(Grade.A);        session.save(t);        session.getTransaction().commit();        HibernateUtil.getSessionFactory().close();      

执行后主键就是:primary key (id, name)

DEBUG SchemaUpdate:226 - create table t_Teacher (id number(10,0) not null, name varchar2(255 char) not null, age number(10,0) not null, birthday date, grade varchar2(255 char), primary key (id, name))




读书人网 >嵌入开发

热点推荐