Hibernate аннотация много-к-одному выпуску - PullRequest
0 голосов
/ 24 августа 2011

У меня есть проблема с объектом сохранения с отношением один ко многим. В моей проблеме One UserGrop имеет много UserPermissions. Теперь я хочу создать свой класс домена следующим образом:

@Entity
@Table(name = "tbl_usergroup")
public class UserGroup implements Serializable {

    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)    
    @Column(name="userGroupId")
    private long userGroupId;

    @Column(name = "userGroupName")
    private String userGroupName;

    @OneToMany(cascade=CascadeType.ALL,mappedBy="userGroup",fetch=FetchType.EAGER)
    private Set<UserPermissions> userPermissions = new HashSet<UserPermissions>(0);



}

@Entity
@Table(name = "tbl_group_permissions")
public class UserPermissions implements Serializable {

    @Id
    @GeneratedValue
    private Long userPermissionId;

    @ManyToOne(cascade =CascadeType.ALL)     
    @JoinColumn(name="userGroupId",nullable=false)
    @ForeignKey(name = "userGroupId")
    private UserGroup userGroup;


}

Но при сохранении UserGroup также сохраняются объекты UserPermisions. Там с таблицей это не имеет никакого отношения ( при получении объекта UserGroup, оно не возвращает Set объектов UserPermisions ).

DB:

+------------------+-------------+
--+
| userPermissionId | userGroupId |
e |
+------------------+-------------+
--+
|               33 |        NULL |
  |
|               34 |        NULL |
  |
|               35 |        NULL |
  |
|               36 |        NULL |
  |
|               37 |        NULL |
  |
|               38 |        NULL |
  |
|               39 |        NULL |
  |
|               40 |        NULL |
  |
+------------------+-------------+
--+
8 rows in set (0.00 sec)

Может ли какой-нибудь орган помочь мне решить эту проблему?

1 Ответ

0 голосов
/ 24 августа 2011

В @OneToMany на UserGroup.userPermissions у вас есть mappedBy="userGroup".Это означает, что свойство userGroup в UserPermisions отвечает за отношение.Я предполагаю, что вы не устанавливаете это свойство, и после сохранения оно все еще равно нулю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...