@Service
@RequiredArgsConstructor
@Slf4j
@Transactional //더티체킹을 위해 필요.
public class HotelService {
더티 체킹은 Transaction 안에서 엔티티의 변경이 일어나면,
변경 내용을 자동으로 데이터베이스에 반영하는 JPA의 특징이다.
Transactional 어노테이션을 통해 수정API에서 부분수정을 하면
자동 업데이트가 가능하다! 이걸 더티체킹이라고 한다.
자세히 설명하자면 트랜잭션 범위 내에서는 JPA가 제공하는 영속성 컨텍스트가 활성화되어있기 때문에
영속 상태의 엔티티에 대한 변경사항이 자동으로 데이터베이스에 반영된다.
이렇게 Service클래스에 어노테이션을 사용하면
단건조회를 통해 특정 데이터를 변경하면
자동으로 DB에 반영이 되는 것이다.
'개인 공부 (23.07~' 카테고리의 다른 글
[SQL] offset 사용법 (0) | 2023.10.31 |
---|---|
스프링 컨테이너의 관리 대상은? (0) | 2023.10.30 |
영속성 컨텍스트 (0) | 2023.10.30 |
[JPA] @GeneratedValue(strategy = GenerationType.IDENTITY) (0) | 2023.10.30 |
서블릿, 로그인 (0) | 2023.10.30 |