用戶與角色---多對多
用戶
package com.yz.pojos;

import java.util.HashSet;
import java.util.Set;

/**
* Users generated by MyEclipse Persistence Tools
*/

public class Users implements java.io.Serializable {

// Fields

private Integer uid;

private String name;
//告訴用戶所有的角色集合 ,一個用戶可以屬于多個角色
private Set roles = new HashSet(0);

// Constructors

/** default constructor */
public Users() {
}

/** minimal constructor */
public Users(String name) {
this.name = name;
}

/** full constructor */
public Users(String name, Set roles) {
this.name = name;
this.roles = roles;
}

// Property accessors

public Integer getUid() {
return this.uid;
}

public void setUid(Integer uid) {
this.uid = uid;
}

public String getName() {
return this.name;
}

public void setName(String name) {
this.name = name;
}

public Set getRoles() {
return roles;
}

public void setRoles(Set roles) {
this.roles = roles;
}



}
<?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">
<!--
Mapping file autogenerated by MyEclipse Persistence Tools
-->
<hibernate-mapping>
<class name="com.yz.pojos.Users" table="users" catalog="ssh">
<id name="uid" type="java.lang.Integer">
<column name="uid" />
<generator class="native" />
</id>
<property name="name" type="java.lang.String">
<column name="name" length="32" not-null="true" />
</property>
<!-- 中間表 -->
<set name="roles" inverse="false" table="userroles">
<key>
<!-- 通過中間表的uid找到Users -->
<column name="uid" />
</key>
<!-- 通過中間表的rid找到對應的Roles -->
<many-to-many class="com.yz.pojos.Roles" column="rid"></many-to-many>
</set>
</class>
</hibernate-mapping>
角色
package com.yz.pojos;

import java.util.HashSet;
import java.util.Set;

/**
* Roles generated by MyEclipse Persistence Tools
*/

public class Roles implements java.io.Serializable {

// Fields

private Integer rid;

private String rname;
//一個角色可以被多個用戶所關聯,所以應該放用戶對象
private Set users = new HashSet(0);

// Constructors

/** default constructor */
public Roles() {
}

/** minimal constructor */
public Roles(String rname) {
this.rname = rname;
}

/** full constructor */
public Roles(String rname, Set users) {
this.rname = rname;
this.users = users;
}

// Property accessors

public Integer getRid() {
return this.rid;
}

public void setRid(Integer rid) {
this.rid = rid;
}

public String getRname() {
return this.rname;
}

public void setRname(String rname) {
this.rname = rname;
}

public Set getUsers() {
return users;
}

public void setUsers(Set users) {
this.users = users;
}


}
<?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">
<!--
Mapping file autogenerated by MyEclipse Persistence Tools
-->
<hibernate-mapping>
<class name="com.yz.pojos.Roles" table="roles" catalog="ssh">
<id name="rid" type="java.lang.Integer">
<column name="rid" />
<generator class="native" />
</id>
<property name="rname" type="java.lang.String">
<column name="rname" length="32" not-null="true" />
</property>
<set name="users" inverse="true" table="userroles">
<key>
<!-- 通過中間表的rid找到對應的角色 -->
<column name="rid" />
</key>
<!-- 通過中間標的uid找到對應的用戶 -->
<many-to-many class="com.yz.pojos.Users" column="uid"></many-to-many>
</set>
</class>
</hibernate-mapping>
用戶




























































































角色


























































































