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>


     



     

  • 相关阅读:
    Armijo线性搜索
    numpy 常用工具函数 —— np.bincount/np.average
    理解Buffer
    Node.js 文件系统fs模块
    NodeJS遍历文件生产文件列表
    windows 环境下node开发环境搭配问题
    npm国内镜像
    node+express实现文件上传功能
    Coding 代码管理快速入门(转)
    Node学习HTTP模块(HTTP 服务器与客户端)
  • 原文地址:https://www.cnblogs.com/xiaoqiangzhaitai/p/5429469.html
Copyright © 2011-2022 走看看