全注解配置Hibernate报错!在线等!!!急

weixin_38065957 2014-03-18 12:01:23
第一次使用注解配置Hibernate,但是运行的时候出现了错误。 mappedBy reference an unknown target entity property 网上百度说这种错误是由于one方的mappedBy指定的不对,应该指定的是many方中的one方对象属性。但是我指定的是对的,但是不知道为什么就是错误的。 one方: package com.bdqn.domain; import java.io.Serializable; import java.util.HashSet; import java.util.Set; import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.OneToMany; import javax.persistence.OneToOne; import javax.persistence.SequenceGenerator; import javax.persistence.Table; @Entity @SequenceGenerator(name="user_seq",sequenceName="seq_sys_users") @Table(name="sys_users") public class Users implements Serializable{ private Integer usid; private String usname; private String uspwds; private Set lianxirens=new HashSet(0); //检查这个属性是否使用了泛型,如:Set<类型>. //如 果未使用泛型,请在OneToMany注释中使用targetEntity指定元素的类型 @Id @GeneratedValue(strategy=GenerationType.SEQUENCE,generator="user_seq") //主键生成策略 取决于用什么数据库 public Integer getUsid() { return usid; } public void setUsid(Integer usid) { this.usid = usid; } public String getUsname() { return usname; } public void setUsname(String usname) { this.usname = usname; } @Column(name="uspwd") public String getUspwds() { return uspwds; } public void setUspwds(String uspwds) { this.uspwds = uspwds; } @OneToMany(cascade={CascadeType.ALL},fetch=FetchType.LAZY,mappedBy="user",targetEntity=Users.class) public Set getLianxirens() { return lianxirens; } public void setLianxirens(Set lianxirens) { this.lianxirens = lianxirens; } public Users(Integer usid, String usname, String uspwds, Set lianxirens) { super(); this.usid = usid; this.usname = usname; this.uspwds = uspwds; this.lianxirens = lianxirens; } public Users() { super(); } } many方: package com.bdqn.domain; import java.util.Date; import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.SequenceGenerator; import javax.persistence.Table; import javax.persistence.Temporal; import javax.persistence.TemporalType; @Entity @SequenceGenerator(name="lianxiren_seq",sequenceName="seq_lianxiren") @Table(name="lianxiren") public class Lianxirens { private Integer lid; private String lname; private String phone; private Date times; private Users user; @Id @GeneratedValue(strategy=GenerationType.SEQUENCE,generator="lianxiren_seq") public Integer getLid() { return lid; } public void setLid(Integer lid) { this.lid = lid; } public String getLname() { return lname; } public void setLname(String lname) { this.lname = lname; } public String getPhone() { return phone; } public void setPhone(String phone) { this.phone = phone; } @Column(nullable=true) @Temporal(TemporalType.DATE) //时间类型 public Date getTimes() { return times; } public void setTimes(Date times) { this.times = times; } @ManyToOne(cascade={CascadeType.ALL},fetch=FetchType.EAGER,optional=true) @JoinColumn(name="usid",insertable=true,updatable=true) public Users getUser() { return user; } public void setUser(Users user) { this.user = user; } public Lianxirens(Integer lid, String lname, String phone, Date times, Users user) { super(); this.lid = lid; this.lname = lname; this.phone = phone; this.times = times; this.user = user; } public Lianxirens() { super(); } } one方是用户表,many方是联系人表,一个用户对应多个联系人 请高手看一下,错误出现在了哪?
...全文
18 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复

430

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧