package com.rlovep.collection; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; 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(CollUser.class); //创建serviceRegistry 代替buildSessionFactory()方法 ServiceRegistry serviceRegistry =new ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry(); // 创建session的工厂对象 sf = config.buildSessionFactory(serviceRegistry); } //测试set @Test public void testSet(){ Session session = sf.openSession(); Transaction tx = session.beginTransaction(); //创建对象 CollUser collUser=new CollUser(); collUser.setUserName("peace"); Set<String> adress=new HashSet<>(); adress.add("五山"); adress.add("三号楼"); collUser.setAddress(adress); //保存对象 session.save(collUser); tx.commit(); //获取对象 tx=session.beginTransaction(); CollUser user = (CollUser) session.get(CollUser.class, 1); System.out.println(user.getAddress()); tx.commit(); session.close(); } //测试list @Test public void testList(){ Session session = sf.openSession(); Transaction tx = session.beginTransaction(); //创建对象 CollUser collUser=new CollUser(); collUser.setUserName("peace1"); List<String> adress=new ArrayList<>(); adress.add("五山"); adress.add("三号楼"); collUser.setAddressList(adress); //保存对象 session.save(collUser); tx.commit(); //获取对象 tx=session.beginTransaction(); CollUser user = (CollUser) session.get(CollUser.class, 2); System.out.println(user.getAddressList()); tx.commit(); session.close(); } //测试map @Test public void testMap() { Session session = sf.openSession(); Transaction tx = session.beginTransaction(); // 创建对象 CollUser collUser = new CollUser(); collUser.setUserName("peace2"); Map<String, String>map=new HashMap<>(); map.put("三号楼", "五山"); map.put("五山", "西六"); collUser.setAddressMap(map); // 保存对象 session.save(collUser); tx.commit(); // 获取对象 tx = session.beginTransaction(); CollUser user = (CollUser) session.get(CollUser.class, 3); System.out.println(user.getAddressMap()); tx.commit(); session.close(); } }