최대 절전 모드에서 개체의 지속성에 대한 질문이 있습니다.컬렉션에서 요소의 지속성을 최대 절전 모드로 전환합니다.
컨텍스트 내가 여러 역할이있는 사용자 가지고있다 : 나는
싶습니다public class ShopDaoImpl implements ShopDAO{
@PersistenceContext
private EntityManager em;
@Override
public void attribuerRole(Role r, Long userID) {
User u = em.find(User.class, userID);
u.getRoles().add(r);
em.persist(r);
}
}
이유 undersand하는 DaoImpl에서 사용자에게 다른 역할을 추가 할
@Entity
@Table(name="users")
public class User implements Serializable {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="user_id")
private Long idUser;
@OneToMany
@JoinColumn(name="user_id")
private Collection<Role> roles;
}
를 I 역할 r (persist와 함께) 만 저장하면됩니다. 예를 들어 사용자를 업데이트 할 필요가 없습니다 (em.merge (u)). 사용자를 수정했지만 (콜렉션 역할에서 역할 추가)
감사합니다. JB Nizet! – stackSaru