package com.rlovep.component; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import org.hibernate.service.ServiceRegistry; import org.hibernate.service.ServiceRegistryBuilder; import org.junit.Test; //测试一对一 public class App { private static SessionFactory sf=null; static{ Configuration config=new Configuration().configure().addClass(Car.class); //创建serviceRegistry 代替buildSessionFactory()方法 ServiceRegistry serviceRegistry =new ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry(); // 创建session的工厂对象 sf = config.buildSessionFactory(serviceRegistry); } @Test public void testSave(){ Session session = sf.openSession(); Transaction tx = session.beginTransaction(); // 轮子 Wheel wheel = new Wheel(); wheel.setSize(38); wheel.setCount(4); // 汽车 Car car = new Car(); car.setName("BMW"); car.setWheel(wheel); // 保存 session.save(car); tx.commit(); session.close(); } @Test public void testGet(){ Session session = sf.openSession(); Transaction tx = session.beginTransaction(); Car car=(Car)session.get(Car.class, 1); System.out.println(car.getName()); System.out.println("-----"); System.out.println(car.getWheel().getSize()+":"+car.getWheel().getCount()); tx.commit(); session.close(); } }