CREATE TABLE users(
id VARCHAR(32) PRIMARY KEY,
NAME VARCHAR(50),
PASSWORD VARCHAR(32),
phone VARCHAR(50),
email VARCHAR(50)
);
CREATE TABLE address(
id VARCHAR(32) PRIMARY KEY,
NAME VARCHAR(50),
phone VARCHAR(50),
zip VARCHAR(50),
dft CHAR(1) default ‘0’,
userid VARCHAR(32),
mktime varchar(19),
CONSTRAINT addr_fk1 FOREIGN KEY(userid) REFERENCES users(id)
);
一方:users的id 关联 多方:address的userid
只要配置一方的set就可以了。
<?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="cn.hncu.itcast.domain">
<class name="User" table="users" catalog="bookstore">
<id name="id" type="java.lang.String">
<column name="id" length="32"></column>
</id>
<property name="name" type="java.lang.String">
<column name="NAME" length="50"></column>
</property>
<property name="password" type="java.lang.String">
<column name="PASSWORD" length="32"></column>
</property>
<property name="phone" type="java.lang.String">
<column name="phone" length="50"></column>
</property>
<property name="email" type="java.lang.String">
<column name="email" length="50"></column>
</property>
<set name="addrs" table="address" inverse="true" cascade="all">
<key column="userid" foreign-key="userid"></key>
<one-to-many class="cn.hncu.itcast.domain.Address"></one-to-many>
</set>
</class>
<class name="Address" table="address" catalog="bookstore" >
<id name="id" type="java.lang.String">
<column name="id" length="32"></column>
</id>
<property name="name" type="java.lang.String">
<column name="NAME" length="50"></column>
</property>
<property name="phone" type="java.lang.String">
<column name="phone" length="50"></column>
</property>
<property name="zip" type="java.lang.String">
<column name="zip" length="50"></column>
</property>
<property name="dft" type="java.lang.String">
<column name="dft" length="1"></column>
</property>
<property name="userid" type="java.lang.String">
<column name="userid" length="32"></column>
</property>
<property name="mktime" type="java.lang.String">
<column name="mktime" length="19"></column>
</property>
</class>
</hibernate-mapping>
测试结果