种继承树映射成一张表
类继承树映射成一张表
Users.java
package cn.lxl.pojo; public class Users { private int id; private String username; private String password; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
Admin.java
package cn.lxl.pojo; public class Admin extends Users { private String manSuc; public String getManSuc() { return manSuc; } public void setManSuc(String manSuc) { this.manSuc = manSuc; } }
Guest.java
package cn.lxl.pojo; public class Guest extends Users { private String loginTime; public String getLoginTime() { return loginTime; } public void setLoginTime(String loginTime) { this.loginTime = loginTime; } }
Users.hbm.xml
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="cn.lxl.pojo.Users" table="t_users"> <id name="id"> <generator class="increment"/> </id> <discriminator column="users_type"/> <property name="username" type="java.lang.String"> <column name="username"/> </property> <property name="password" type="java.lang.String"> <column name="password"/> </property> <subclass name="cn.lxl.pojo.Admin" discriminator-value="admin"> <property name="manSuc" type="java.lang.String"> <column name="man_suc"/> </property> </subclass> <subclass name="cn.lxl.pojo.Guest" discriminator-value="guest"> <property name="loginTime" type="java.lang.String"> <column name="login_time"/> </property> </subclass> </class> </hibernate-mapping>