在UserInfo这边配置manyToOne:
@ManyToOne(optional=false,fetch=FetchType.LAZY)
@JoinColumn(name="department_id")
private UserInfo muser =new UserInfo();在部门这边配置oneToMany
@OneToMany(fetch=FetchType.LAZY)
@JoinColumn(name="department_id")注意数据库中UserInfo这边要存department_id,原因是ORM映射,你的department就是对应department_id
我没在IDE中测试,有可能有点小问题,但是配置就是这样的了。

解决方案 »

  1.   

    我不太明白,为什么是用多对一和一对多的关系,一个userInfo对应一个部门,但是一个部门可以有多个员工,这样子算是一对一,还是多对一啊
      

  2.   

    我不太明白,为什么是用多对一和一对多的关系,一个userInfo对应一个部门,但是一个部门可以有多个员工,这样子算是一对一,还是多对一啊
    我按照你说的配置,出现了这个的错误:
     nested exception is org.hibernate.MappingException: Repeated column in mapping for entity: com.tarena.oa.entity.Department column: departmentId (should be mapped with insert="false" update="false")
    需要怎么解决..
      

  3.   

    记住  多对一  的问题 家注解的时候 一定要有  @joinColumn(...)
      

  4.   

    我这个例子是多对一不是一对一么,无论是多对一还是一对一的注解我都配置过了,都会出现错误,然后我有一种是这样配置的
    UserInfo类里面:
    @OneToOne(mappedBy="userInfo")
    private Department department;Department类里面:
    @OneToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="departmentId")
    private UserInfo userInfo;这种情况就会出现我拿到的员工List,第一个userInfo.departmentId是1,第二个userInfo.departmentId是2,也就是说:员工引用部门的外键列变成了员工类的userId,不和userInfo.departmentId对应
      

  5.   

    我这个例子是多对一不是一对一么,无论是多对一还是一对一的注解我都配置过了,都会出现错误,然后我有一种是这样配置的
    UserInfo类里面:
    @OneToOne(mappedBy="userInfo")
    private Department department;
    Department类里面:
    @OneToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="departmentId")
    private UserInfo userInfo;这种情况就会出现我拿到的员工List,第一个userInfo.departmentId是1,第二个userInfo.departmentId是2,也就是说:员工引用部门的外键列变成了员工类的userId,不和userInfo.departmentId对应一对一 好像没必要配置   joincolumn
      

  6.   

    我这个例子是多对一不是一对一么,无论是多对一还是一对一的注解我都配置过了,都会出现错误,然后我有一种是这样配置的
    UserInfo类里面:
    @OneToOne(mappedBy="userInfo")
    private Department department;
    Department类里面:
    @OneToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="departmentId")
    private UserInfo userInfo;这种情况就会出现我拿到的员工List,第一个userInfo.departmentId是1,第二个userInfo.departmentId是2,也就是说:员工引用部门的外键列变成了员工类的userId,不和userInfo.departmentId对应一对一 好像没必要配置   joincolumn不用joincolumn它怎么才能知道我这个类中哪个是外键来着