一、实验目的:
理解现实中的对象关联(1:1,1:N,M:N)在对象模型和关系模型中如何关联;
掌握关联映射配置文件的设置;
掌握关联对象的保存,查询等基本操作。
二、实验内容:
1.单向的多对一关联映射;
2.双向的一对一关联映射(基于主键或外键);
3.单向的一对多关联映射;
三、实验设备及软件环境:
hibernate 5.2.10
Eclipse
四、实验过程及结果:
部分代码:
publicclass CardTest {
Configuration cfg = null;
SessionFactory sf = null;
Session s = null;
Transaction ts = null;
@Test
publicvoid add(){
try {
cfg = new Configuration().configure();
sf = cfg.buildSessionFactory();
s = sf.openSession();
ts = s.beginTransaction();
User user1=new User();
user1.setUserId(2);
User user2=new User();
user2.setUserId(2);
Card card1=new Card();
card1.setName("spring");
Card card3=new Card();
card3.setName("springboot");
card1.setUser(user1);
card3.setUser(user1);
s.save(card1);
s.save(card3);
ts.commit();
} catch (HibernateException e) {
if(ts != null)
{
ts.rollback();
}
e.printStackTrace();
}finally{
if(s != null){
s.close();
}
}
}
}
结果:
1.多对一关联映射:
2.一对一关联映射:
3.多对多关联映射:
五、总结:
通过这次实验,我理解了现实中的对象关联(1:1,1:N,M:N)在对象模型和关系模型中如何关联,掌握了关联映射配置文件的设置,掌握了关联对象的保存,查询等基本操作。