zoukankan      html  css  js  c++  java
  • hibernate 联合主键

    xml配置

    需要一个主键类:

    package com.bxw.entity;
    
    import java.io.Serializable;
    
    
    public class StudentPk implements Serializable{
        private String id;
        private String name;
        public String getId() {
            return id;
        }
        public void setId(String id) {
            this.id = id;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        
        @Override
        public boolean equals(Object obj) {
            if(obj instanceof StudentPk){
                StudentPk pk = (StudentPk)obj;
                if(this.name.equals(pk.getName()) && this.id.equals(pk.getId())){
                    return true;
                }
                return false;
            }
            return false;
        }
        
        @Override
        public int hashCode() {
            return this.id.hashCode();
        }
    }

    该主键类必须implements序列化的Serializable接口;

    该主键类必须重写equals()、hashCode()方法。

    实体:

    package com.bxw.entity;
    
    public class Student {
        private StudentPk pk;
        private String sex;
        
        public StudentPk getPk() {
            return pk;
        }
        public void setPk(StudentPk pk) {
            this.pk = pk;
        }
        public String getSex() {
            return sex;
        }
        public void setSex(String sex) {
            this.sex = sex;
        }
        
        
    }

    配置文件

    <?xml version="1.0" encoding='UTF-8'?>  
      
    <!DOCTYPE hibernate-mapping PUBLIC   
         "-//Hibernate/Hibernate Mapping DTD 3.0//EN"   
         "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">  
    <hibernate-mapping package="com.bxw.entity">  
       <class name="Student">  
          <composite-id name="pk" class="com.bxw.entity.StudentPk">
              <key-property name="id"></key-property>
            <key-property name="name"></key-property>
          </composite-id>        
          <property name="sex"></property>  
       </class>
    </hibernate-mapping>  
  • 相关阅读:
    PHP 获取完整URL地址
    竖向 两级手风琴 TAB 栏
    Log4Net 用法记录
    C# 正整数和非零正整数校验
    NewtonSoft对象转json时,把 NULL 转 "" , 过滤 NULL, DateTime 时间类型去除 T
    SQL 事务
    SQL insert 主键冲突
    【记录】无法读取配置节“AppSettings”,因为它缺少节声明
    asp.net 前后台数据交互方式(转)
    php 生成文件txt到指定目录
  • 原文地址:https://www.cnblogs.com/popcornya/p/7248069.html
Copyright © 2011-2022 走看看