Item 의 SellStatus 컬럼을 Enum 클래스로 만들어보기로 했다
enum 써보고싶었음
@Enumerated 어노테이션을 사용해야하는데, Enumerated 는 '열거' 라는 뜻이다.

열거라는 뜻에 알맞게 클래스는 이렇게 값을 나열하는것만으로 완성이다.
그리고 해당 클래스 컬럼에 @Enumerated 어노테이션을 붙여주면된다
Item.java

EnumType 에는 ORDINAL 과 STRING 이 있다.
ORDINAL : enum 클래스에서 선언한 순서가 DB에 저장된다 ( 1 or 2 )
STRING : enum 클래스에서 선언된 문자열이 DB에 저장된다 ( SELL or SOLDOUT )
물론 숫자로 넣는게 모든면에서 최적화되어 좋겠지만,
토이프로젝트에 공부차 적용해보는것이라서
직관적으로 판매 / 품절 상태를 알 수 있도록 STRING 을 선택했다.
ItemRequestDto.java
DTO에 추가해주고

register.html
view 에 속성을 추가해서 상품을 등록하는 판매자가
판매중 / 품절 상태를 선택할 수 있는 select를 추가해줬다

상품을 등록하고 DB를 확인했을 때 아래와같이 sell_status 컬럼이 추가되었고
SELL 이라는 문자열이 들어가있는 것을 확인 할 수 있다 !

※ thymeleaf 에서 enum 값 가져오기
T() 사용
<span class ="sold_out_span" th:if="${item.sellStatus!=T(com.proj.KnitMarket.Constant.SellStatus).SELL}">품절</span>
'프로젝트' 카테고리의 다른 글
| [SpringBoot & JPA 프로젝트] 판매자 : 상품삭제하기 (delFlag) (0) | 2022.08.24 |
|---|---|
| [Spring Boot & JPA 프로젝트] 상품등록 / 파일업로드(다중X) (0) | 2022.08.17 |
| [SpringBoot & JPA 프로젝트] 뜨개장터 소개 (2) | 2022.08.17 |
| [SpringBoot & JPA 프로젝트] common/message (0) | 2022.08.11 |
| [SpringBoot & JPA 프로젝트] requestRejectedException / Error executing DDL / FileNotFoundException (0) | 2022.08.11 |