您的位置:首页 > 其它

用hibernate怎么实现一个表中多个字段的联合唯一

2008-12-31 17:00 344 查看
<?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方法

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();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐