求hibernate继承映射:
customer(name,address) & salesman(name,sex,address)extend user(id,login_name,login_pwd) 但customer与salesman是多对一,即多客户对映一商务,这种关系在hibernate中怎么写
customer(name,address) & salesman(name,sex,address)extend user(id,login_name,login_pwd) 但customer与salesman是多对一,即多客户对映一商务,这种关系在hibernate中怎么写
解决方案 »
- Struts+Hibernate小项目,插入MySQL数据库的两个小问题.烦请大家给解答一下!
- 求一个java Socket实例
- Java Tutorial是什么
- 修改Spring配置文件名后该配置文件失去一些Spring配置文件的特征。
- 解决jsp中烦人的中文乱码
- 急,tomcat6 多域名配置
- 为什么在 hibernate 中使用 cascade 时比不使用 cascade 多执行一句 select 语句
- MyEclipse怎么安装不了了啊,老是卡在那个installing画面了,郁闷
- javaMail 群发Html格式的邮件
- javaweb项目分钟数结尾每到0或者5就执行一个操作
- 请教一个JavaScript的问题
- struts2 里面 <s:action name= /> 返回结果必须要2个JSP么?
不过你的题目似乎有的点错误吧 name,address属性你应该抽取到User这实体类里面
而且项目中涉及也没有让customer继承 User实体的,因为User一般用于系统登录和系统打交道的
不涉及到实际业务操作吧。。 一般都是抽取customer作为父类,然后分为个人客户PersonCustomer和公司客户,而销售人员则另外建立一个实体类 Person。
这里我只帖一下继承映射的代码,现写的
User实体@Entity
@Table(name="test_user")
@DiscriminatorColumn(name="type") //加入一个辨别字段,辨别是customer还是saleman
public class User { @Id
@GeneratedValue
private int id ;
private String login_name;
private String login_pwd;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getLogin_name() {
return login_name;
}
public void setLogin_name(String login_name) {
this.login_name = login_name;
}
public String getLogin_pwd() {
return login_pwd;
}
public void setLogin_pwd(String login_pwd) {
this.login_pwd = login_pwd;
}
}
Customer
@Entity
@DiscriminatorValue("Customer") //设计辨别字段的值为Customer
public class Customer extends User {
private int name;
private String address;
public int getName() {
return name;
}
public void setName(int name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}}
Salesman实体
@Entity
@DiscriminatorValue("Salesman") //设计辨别字段的值为Customer
public class Salesman extends User { private String name;
private String address;
private String sex;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}