• hibernate多表关联(<hibernate-mapping>)的配置


    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">

    <hibernate-mapping package="com.zr.bimany2many.xml">
    <!-- Tester类对应testers表 -->
    <class name = "Tester" table = "testers">
    <!-- testers表的主键 -->
    <id name="id" column="id">
    <!-- 主键生成策略 -->
    <generator class="sequence">
    <!-- 数据库中序列的名字 -->
    <param name="sequence">testers_id_seq</param>
    </generator>
    </id>
    <!-- 普通字段的映射 -->
    <property name = "name"></property>
    <!-- 测试人员到测试项目的多对多关联-->
    <!-- 定义关联表 -->
    <!-- table定义关联表的表名 -->
    <!-- cascade:关联同步 -->
    <set name="projects" table="testers_projects" cascade="save-update">
    <!-- 我(测试人员)在关联表中的外键 -->
    <key column="testers_id"></key>
    <!-- 多对多关联的另一方(测试项目) -->
    <many-to-many class="Project" column="projects_id"></many-to-many>
    </set>
    </class>
    <!-- ================================================================================================== -->
    <!-- Project类对应projects表 -->
    <class name = "Project" table="projects">
    <!-- projects表的主键 -->
    <id name="id" column="id">
    <!-- 主键生成策略 -->
    <generator class="sequence">
    <param name="sequence">projects_id_seq</param>
    </generator>
    </id>
    <!-- 普通字段的映射 -->
    <property name = "name"></property>
    <!-- 测试项目到测试人员的多对多关联-->
    <!-- inverse同步数据控制权的反转 -->
    <!-- 单向关联中,不需要管inverse了,默认="false" -->
    <!-- 双向一对多关联中,在"一"(相对于多方)方设置 inverse="true"-->
    <!-- 在双向多对多关联中,在任何一方设置 inverse=true-->
    <!-- Tester中关联对象属性的名字testers -->
    <set name = "testers" table="testers_projects" inverse="true">
    <!-- 说明关联的外键 -->
    <key column="projects_id"></key>
    <!-- 说明与谁有多对多的关联 -->
    <many-to-many class="Tester" column="testers_id"/>
    </set>
    </class>

    </hibernate-mapping>

  • 相关阅读:
    python取一个字符串中最多出现次数的词
    python openpyxl 操作 excel
    微信公众平台开发
    Oracle
    微信公众平台开发
    微信公众平台开发
    Html 转义字符那些事儿
    Linq DataTable表连接
    使用WeUI+JS 的label包含input触发两次的问题
    Html 图片上传
  • 原文地址:https://www.cnblogs.com/xiaweicn/p/8848428.html
Copyright © 2020-2023  润新知