hibernate之映射关系多对多


  注意配置:
   1、多对多配置双方都是set集合同时指向中间表的字段
 代码:
  1、sql语句
   create table t_user(
     u_id varchar(255),
     u_name varchar(255),
     u_age Integer,
     u_price double(5,2),
     primary key(u_id)
    );
    
    create table t_user_class(
     uc_id varchar(255),
     uc_classNo Integer,
     uc_funds double(5,2),
     uc_back varchar(255),
     primary key(uc_id)
    );
    
    create table t_user_reference(
     u_id varchar(255),
     uc_id varchar(255)
    );
 2、java类
 
  public class UserClass {
 
   private  String id;
   private Integer classNo;
   private double funds;
   private String back;
   private Set<UserT> users=new HashSet<UserT>();
   
  public class UserT  implements Serializable{
  
   private String id;
   public String name;
   private Integer age;
   private double price;
   private Set<UserClass> usercs=new HashSet<UserClass>();
   
 3、配置文件
    <?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.wolf.pojo.oneToone">
        <class name="UserClass" table="t_user_class">
            <id name="id" column="uc_id"/>
            <property name="classNo" column="uc_classNo"/>
            <property name="funds" column="uc_funds"/>
            <property name="back" column="uc_back"/>
            <set name="users" table="t_user_reference" cascade="all">
             <key column="u_id"></key>
             <many-to-many class="UserT" column="uc_id"></many-to-many>
            </set>
        </class>
    </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.wolf.pojo.oneToone" auto-import="false">
         <class name="UserT" table="t_user">
             <id name="id" column="u_id">
             </id>
             <property name="name" column="u_name"/>
             <property name="age" column="u_age"/>
             <property name="price" column="u_price"/>
             <set name="usercs" table="t_user_reference" cascade="all">
              <key column="uc_id"></key> 
              <many-to-many class="UserClass" column="u_id"></many-to-many>
             </set>
         </class>
     </hibernate-mapping>

转载于:https://my.oschina.net/u/1041709/blog/897802

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值