首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

hibernate照射文件中的id标签以及联合主键

2012-09-10 
hibernate映射文件中的id标签以及联合主键hibernate映射文件中的id标签以及联合主键一、id标签? ? ? ?被映

hibernate映射文件中的id标签以及联合主键

hibernate映射文件中的id标签以及联合主键


一、id标签

? ? ? ?被映射的类必须定义对应数据库表主键字段。大多数类有一个JavaBeans风格的属性, 为每一个实例包含唯一的标识。<id> 元素定义了该属性到数据库表主键字段的映射

?

二、联合场景

学生表Student是由id和name联合形成主键

三、联合主键类的编写

? ? ? 1)实现java.io.Serializable接口

? ? ? 2)必须重写equals() 和 hashCode() 方法

?

?

其中:

<composite-id 指定联合主键的信息

?<key-property 指定在StudentId类中的联合信息

五、测试类

?

?

package com.linys.model;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg.Configuration;import org.junit.AfterClass;import org.junit.BeforeClass;import org.junit.Test;public class TestUniPk {static SessionFactory sf;@BeforeClasspublic static void setUpBeforeClass() throws Exception {sf = new Configuration().configure().buildSessionFactory();}@Testpublic void testUniPk(){StudentId stuId=new StudentId();//stuId.setId(1);stuId.setName("linys");Student stu=new Student();stu.setAge(23);stu.setId(stuId);Session session =sf.openSession();Transaction tr=session.beginTransaction();session.save(stu);tr.commit();session.save(stu);}@AfterClasspublic static void tearDownAfterClass() throws Exception {sf.close();}}
?

?

?

?

?

热点排行