작성
·
132
0
안녕하세요 늘 좋은 강의 감사합니다.
한 쓰레드에서 업데이트와 셀렉트를 하는데 업데이트가 되지 않습니다.
1. A테이블에서 find
A엔티티에서 User테이블과 연관된 상태
@Column(name = "user_id", insertable = false, updatable = false)
private Long userId;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "user_id", nullable = false, referencedColumnName = "id")
@JsonIgnore
private User user;
2. User테이블의 컬럼 업데이트
user.setPhone1("010");
userRepository.save(user);
를 하면 User테이블의 컬럼이 업데이트 되지 않습니다.
왜 그런걸까요?
답변 1
0
안녕하세요. engineer-edu님
@Transactional 안에서 User를 조회하고, 변경했는지 확인해주세요.
JPA의 모든 데이터 변경은 트랜잭션 안에서 처리되어야 합니다.
감사합니다.
안녕하세요. engineer-edu님
도움을 드리고 싶은데 설명해주신 내용만 가지고는 답변을 드리기가 어렵습니다.
문제가 되는 부분만으로 실제 동작하는 예제 코드를 만들어서 전체 프로젝트를 압축해서 올려주세요.
추가로 entityManager.clear()를 어디에 적용했을 때는 동작하는지도 주석으로 남겨주세요.
감사합니다.
안녕하세요 영한님 빠른 답변 감사합니다.
위의 문제는 entityManager.clear();
를 사용했더니 해결되었습니다.
하지만 정확한 이유를 모르겠어요.. 혹시 알려주실 수 있으실까요?