⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 manytomanytest.java

📁 hibernate方便的操作数据库相当不错的 请各位下载看看啊
💻 JAVA
字号:
//$Id: ManyToManyTest.java,v 1.4 2005/02/25 12:44:44 maxcsaucdk Exp $package org.hibernate.test.metadata.manytomany;import java.util.ArrayList;import java.util.Collection;import java.util.HashSet;import java.util.Hashtable;import java.util.Set;import org.hibernate.Session;import org.hibernate.Transaction;import org.hibernate.test.metadata.TestCase;/** * Many to many tests *  * @author Emmanuel Bernard */public class ManyToManyTest extends TestCase {	public ManyToManyTest(String x) {		super(x);	}		public void testBasic() throws Exception {		Session s;		Transaction tx;		s = openSession();		tx = s.beginTransaction();		Employer er = new Employer();		Employee ee = new Employee();		s.persist(ee);		Collection erColl = new ArrayList();		Collection eeColl = new ArrayList();		erColl.add(ee);		eeColl.add(er);		er.setEmployees(erColl);		ee.setEmployers(eeColl);		//s.persist(ee);		tx.commit();		s.close();		s = openSession();		tx = s.beginTransaction();		er = (Employer) s.load(Employer.class, er.getId() );		assertNotNull(er);		assertNotNull( er.getEmployees() );		assertEquals( 1, er.getEmployees().size() );		Employee eeFromDb = (Employee) er.getEmployees().iterator().next();		assertEquals( ee.getId(), eeFromDb.getId() );		tx.commit();		s.close();	}	public void testSelf() throws Exception {		Session s;		Transaction tx;		s = openSession();		tx = s.beginTransaction();		Friend f = new Friend();		Friend sndF = new Friend();		f.setName("Starsky");		sndF.setName("Hutch");		Set frnds = new HashSet();		frnds.add(sndF);		f.setFriends(frnds);		//Starsky is a friend of Hutch but hutch is not		s.persist(f);		tx.commit();		s.close();		s = openSession();		tx = s.beginTransaction();		f = (Friend) s.load( Friend.class, f.getId() );		assertNotNull(f);		assertNotNull( f.getFriends() );		assertEquals( 1, f.getFriends().size() );		Friend fromDb2ndFrnd = (Friend) f.getFriends().iterator().next();		assertEquals(fromDb2ndFrnd.getId(), sndF.getId() );		assertEquals( 0, fromDb2ndFrnd.getFriends().size() );		tx.commit();		s.close();	}	public void testCompositePk() throws Exception {		Session s;		Transaction tx;		ManPk m1pk = new ManPk();		m1pk.setElder(true);		m1pk.setFirstName("Lucky");		m1pk.setLastName("Luke");		ManPk m2pk = new ManPk();		m2pk.setElder(false);		m2pk.setFirstName("Joe");		m2pk.setLastName("Dalton");		Man m1 = new Man();		m1.setId(m1pk);		m1.setCarName("Jolly Jumper");		Man m2 = new Man();		m2.setId(m2pk);		WomanPk w1pk = new WomanPk();		w1pk.setFirstName("Ma");		w1pk.setLastName("Dalton");		WomanPk w2pk = new WomanPk();		w2pk.setFirstName("Carla");		w2pk.setLastName("Bruni");		Woman w1 = new Woman();		w1.setId(w1pk);		Woman w2 = new Woman();		w2.setId(w2pk);		Set<Woman> womens = new HashSet<Woman>();		womens.add(w1);		m1.setWomens(womens);		Set<Woman> womens2 = new HashSet<Woman>();		womens2.add(w1);		womens2.add(w2);		m2.setWomens(womens2);		Set<Man> mens = new HashSet<Man>();		mens.add(m1);		mens.add(m2);		w1.setMens(mens);		Set<Man> mens2 = new HashSet<Man>();		mens2.add(m2);		w2.setMens(mens2);		s = openSession();		tx = s.beginTransaction();		s.persist(m1);		s.persist(m2);		tx.commit();		s.close();		s = openSession();		tx = s.beginTransaction();		m1 = (Man) s.load(Man.class, m1pk);		assertFalse( m1.getWomens().isEmpty() );		assertEquals( 1, m1.getWomens().size() );		w1 = (Woman) s.load(Woman.class, w1pk);		assertFalse( w1.getMens().isEmpty() );		assertEquals( 2, w1.getMens().size() );		tx.commit();		s.close();	}	/**	 * @see org.hibernate.test.metadata.TestCase#getMappings()	 */	protected Class[] getMappings() {		return new Class[] {			Employer.class,			Employee.class,			Friend.class,			Man.class,			Woman.class		};	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -