<?
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 >
< class name ="onlyfun.caterpillar.User" table ="user" >
< composite-id >
< key-property name ="name"
column ="name"
type ="java.lang.String" />
< key-property name ="sex"
column ="sex"
type ="java.lang.String" />
</ composite-id >
</ class >
</ hibernate-mapping >
并且定义的User类要覆盖equals和hashCode方法
<! DOCTYPE hibernate-mapping
PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >
< hibernate-mapping >
< class name ="onlyfun.caterpillar.User" table ="user" >
< composite-id >
< key-property name ="name"
column ="name"
type ="java.lang.String" />
< key-property name ="sex"
column ="sex"
type ="java.lang.String" />
</ composite-id >
</ class >
</ hibernate-mapping >
并且定义的User类要覆盖equals和hashCode方法
-
Java code
-
public boolean equals(Object obj) { if (obj == this ) { return true ; } if ( ! (obj instanceof User)) { return false ; } User user = (User) obj; return new EqualsBuilder() .append( this .name, user.getName()) .append( this .sex, user.getSex()) .isEquals(); } public int hashCode() { return new HashCodeBuilder() .append( this .name) .append( this .sex) .toHashCode(); }