Spring

Spring Boot - 상품 도메인 개발

팅탱팅탱 2024. 3. 11. 14:37

 

상품 엔티티 개발

 

상품을 주문할때 재고가 늘고 줄고 하는 로직을 넣어야한다.

근데 여기서 값을 변경해줄땐 다른곳에서 참조해서 변경하는거보다 그냥 그 엔티티 자체에서 변경하는게 좋다.

비즈니스 로직중 재고 수량 관리 로직을 구현해볼것이다.

Item 클래스에서 값을 바꾸는 메서드를 작성해줌.

 

상품 리포지토리 개발

아이템 저장, 단일조회, 전체조회 기능을 구현할 것이다.

 

상품 서비스 개발

아이템 저장기능, 전체조회, 단일조회 기능을 넣어줄것이다.

Transactional 어노테이션은 기본 디폴트 값이 readOnly=false이므로 맨 최상단에 readOnly= true로 설정해주고 

개발된 기능들중 조회가 아닌 기능들에만 위에 Transactional어노테이션을 붙여주면된다.

(조회가 아닌 저장 기능에 readOnly = true 옵션을 적용해버리면 저장이 안됨)