多对一关系模型:
· 首先是导包;这个省略不写了,
· 其次写domain类
分为Client Order两个类,因为是多对一的关系,所以外键应该放在Order这个类里;
配置文件:hibernate.cfg.xml
[java]
定义一个Client的变量;
·然后写配置文件,Client.hbm.xml
Order.hbm.xml
配置文件这样就写完了,接下来就是添加查找;
Session session=null;
@Test
public void add(Client client,Order order){
try{
session = HibernateUtil.getSession();//获取工具类
session.beginTransaction();//开启事务
/*Client client = new Client();
client.setName("刘总");
Order order1 = new Order();
order1.setShopname("航空母舰");
order1.setNumber(2);
order1.setPrice(22);
order1.setCt(client);
Order order2 = new Order();
order2.setShopname("航空母舰");
order2.setNumber(2);
order2.setPrice(22);
order2.setCt(client);*/
session.save(client);
session.save(order);
session.beginTransaction().commit();
}finally{
if(session!=null){
session.close();
}
}
}
public void find(int id){
try{
session = HibernateUtil.getSession();
session.beginTransaction();
Order order = (Order) session.get(Order.class, id);
System.out.println(order.getCt().getName());
session.beginTransaction().commit();
}finally{
if(session!=null){
session.close();
}
}
}
测试:
public static void main(String[] args ){
Client client = new Client();
client.setName("xiao总");
Order order1 = new Order();
order1.setShopname("美国");
order1.setNumber(2);
order1.setPrice(22);
order1.setCt(client);
Order order2 = new Order();
order2.setShopname("日本");
order2.setNumber(2);
order2.setPrice(22);
order2.setCt(client);
Many2one mo = new Many2one();
mo.add(client, order1);
mo.find(2);
}
关系模型一对多:
Client.hbm.xml
Order.hbm.xml