zoukankan      html  css  js  c++  java
  • hibernate>多对多关联映射

    多对多关联映射  (many-to-many)

    多对多关联映射,需要一个中间表,Hibernate会自动生成中间表

    一、多对多单向

    Role.hbm.xml

    <hibernate-mapping>
    	<class name="com.bjsxt.hibernate.Role" table="t_role">
    		<id name="id">
    			<generator class="native"/>
    		</id>
    		<property name="name"/>
    	</class>
    </hibernate-mapping>

    User.hbm.xml

    <hibernate-mapping>
    	<class name="com.bjsxt.hibernate.User" table="t_user">
    		<id name="id">
    			<generator class="native"/>
    		</id>
    		<property name="name"/>
    		<set name="roles" table="t_user_role">
    			<key column="userid"/>
    			<many-to-many class="com.bjsxt.hibernate.Role" column="roleid"/>
    		</set>
    	</class>
    </hibernate-mapping>

    二、多对多双向

    Role.jbm.xml

    <hibernate-mapping>
    	<class name="com.bjsxt.hibernate.Role" table="t_role">
    		<id name="id">
    			<generator class="native"/>
    		</id>
    		<property name="name"/>
    		<set name="users" table="t_user_role" order-by="userid">
    			<key column="roleid"/>
    			<many-to-many class="com.bjsxt.hibernate.User" column="userid"/>
    		</set>
    	</class>
    </hibernate-mapping>

    User.hbm.xml

    <hibernate-mapping>
    	<class name="com.bjsxt.hibernate.User" table="t_user">
    		<id name="id">
    			<generator class="native"/>
    		</id>
    		<property name="name"/>
    		<set name="roles" table="t_user_role">
    			<key column="userid"/>
    			<many-to-many class="com.bjsxt.hibernate.Role" column="roleid"/>
    		</set>
    	</class>
    </hibernate-mapping>


     



     

  • 相关阅读:
    Jquery实现Gridview全选功能
    SQL Server日期计算
    避免表格table被撑开变形的CSS代码实例
    oracle游标使用
    最短路径算法及应用
    Jquery实现GridView隔行变色,鼠标经过变色,单击或者选中变色
    【项目】项目109
    【项目】项目107
    【项目】项目111
    【项目】项目110
  • 原文地址:https://www.cnblogs.com/xqzt/p/5637194.html
Copyright © 2011-2022 走看看