<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    迷失北京

    BlogJava 聯系 聚合 管理
      60 Posts :: 0 Stories :: 13 Comments :: 0 Trackbacks

         這里舉了皇帝和大臣的例子,天子只有一個,而諸侯多的不勝計數。

    實體:

    package uni.one2many;
    
    import java.util.HashSet;
    import java.util.Set;
    
    public class Emperor {
    	private int id;
    	private String name;
    	private Set<Minister> ministers = new HashSet<Minister>();
    
    	public Emperor() {
    
    	}
    
    	public Emperor(int id, String name, Set<Minister> ministers) {
    		super();
    		this.id = id;
    		this.name = name;
    		this.ministers = ministers;
    	}
    
    	public int getId() {
    		return id;
    	}
    
    	public void setId(int id) {
    		this.id = id;
    	}
    
    	public String getName() {
    		return name;
    	}
    
    	public void setName(String name) {
    		this.name = name;
    	}
    
    	public Set<Minister> getMinisters() {
    		return ministers;
    	}
    
    	public void setMinisters(Set<Minister> ministers) {
    		this.ministers = ministers;
    	}
    
    }
    
    package uni.one2many;
    
    public class Minister {
    	private int id;
    	private String name;
    
    	public Minister() {
    
    	}
    
    	public Minister(int id, String name) {
    		super();
    		this.id = id;
    		this.name = name;
    	}
    
    	public int getId() {
    		return id;
    	}
    
    	public void setId(int id) {
    		this.id = id;
    	}
    
    	public String getName() {
    		return name;
    	}
    
    	public void setName(String name) {
    		this.name = name;
    	}
    
    }
    

      

    hbm配置文件:

    <hibernate-mapping>
    	<class name="uni.one2many.Emperor">
    		<id name="id" column="did">
    			<generator class="native" />
    		</id>
    		<property name="name" type="string" column="name"></property>
    		
    		<!-- confirure the uniredirection association -->
    		<set name="ministers" >
    			<key column="id" not-null="true"></key>
    			<one-to-many class="uni.one2many.Minister"/>
    		</set>
    	</class>
    
    </hibernate-mapping>
    <hibernate-mapping>
    	<class name="uni.one2many.Minister">
    		<id name="id" column="did">
    			<generator class="native" />
    		</id>
    		<property name="name" type="string" column="name"></property>
    	</class>
    
    </hibernate-mapping>
    

      

    測試文件:

    public class Test {
    	
    	@org.junit.Test
    	public void testAdd() {
    		SessionFactory sf = HibernateUtil.getSessionFactory();
    		Session session = sf.getCurrentSession();
    		session.beginTransaction();
    		
    		Minister m1 = new Minister();
    		m1.setName("廉頗");
    		
    		Minister m2 = new Minister();
    		m2.setName("藺相如");
    		
    		Emperor emperor = new Emperor();
    		emperor.setName("齊威王");
    		emperor.getMinisters().add(m1);
    		emperor.getMinisters().add(m2);
    		
    		session.save(emperor);
    		session.save(m1);
    		session.save(m2);
    		session.beginTransaction().commit();
    	}
    }
    

      

    測試結果:

    ibernate: insert into Emperor (name) values (?)
    Hibernate: insert into Minister (name, id) values (?, ?)
    Hibernate: insert into Minister (name, id) values (?, ?)
    Hibernate: update Minister set id=? where did=?
    Hibernate: update Minister set id=? where did=?
    

      

    這種映射關系在保存的過程中需要先將一的(主控方)一方先加以保存,否則會出現異常。我們可以對這種異常加以分析,從這種關系生成的表結構可以看出,在Minister的表中有一個指向Emperor的外鍵,由此可以推測出,如果這個外鍵有了非空約束,那么再存儲Minister的過程中必然會出現引用為空的異常。

    posted on 2011-07-23 10:13 王康 閱讀(109) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 全黄a免费一级毛片人人爱| 久久经典免费视频| 亚洲成A人片在线观看无码3D | 亚洲大成色www永久网站| 国产无限免费观看黄网站| 亚洲一级特黄无码片| 老湿机一区午夜精品免费福利| 国产禁女女网站免费看| 免费人成在线观看播放a| 亚洲视频在线免费| 特级做A爰片毛片免费看无码| 亚洲中文久久精品无码ww16| 毛片基地看看成人免费| 亚洲国产精品无码专区| 美女内射无套日韩免费播放| 亚洲人成电影院在线观看| 成人性生免费视频| 欧洲亚洲综合一区二区三区| 国产成人综合亚洲亚洲国产第一页| 中文字幕在线免费看| 亚洲精品视频观看| 爽爽日本在线视频免费| 成人在线免费视频| 亚洲视频在线观看一区| 一个人免费观看视频www| 色窝窝亚洲av网| 亚洲AV无码成人精品区蜜桃| 国产成在线观看免费视频| 美女黄频a美女大全免费皮| 亚洲国产综合无码一区| 免费A级毛片无码无遮挡内射| 亚洲AV无码国产精品永久一区| 亚洲熟妇无码另类久久久| 91免费在线播放| 特黄特色大片免费| 亚洲人成电影在线天堂| 国产福利免费观看| 1000部啪啪未满十八勿入免费| 国产亚洲欧美在线观看| 亚洲va在线va天堂va888www| 成人免费在线观看网站|