😎 STS3 Spring 쇼핑몰

STS3 쇼핑몰 프로젝트[18] 상품 등록 - 카테고리 리스트 구현(1)

개발자 린다씨 2022. 8. 3. 19:33
반응형

순서

1. 카테고리 리스트 객체

2. JSON 데이터 변환

1. 카테고리 리스트 객체

카테고리 리스트 객체를 DB로부터 호출할 수 있도록 Mapper, Service 메서드를 먼저 만들었습니다.

데이터를 반환받는 방식은 게시판의 목록 데이터를 가져오는 방식처럼 List방식을 사용합니다.

먼저 카테고리 테이블(SWAN_CATE)의 데이터를 저장할 그릇인 VO 클래스부터 작성 후, Mapper, Service 순으로 작업합니다.

1.1 CateVO 클래스

com.swan.model 패키지에 CateVO.java 클래스를 생성한 뒤 아래의 변수들을 추가해줍니다.

/* 카테고리 등급 */
private int tier;
	
/* 카테고리 이름 */
private String kind_name;
	
/* 카테고리 넘버*/
private String kind_id;
	
/* 상위 카테고리 */
private String cateparent;

변수 추가 후 기본 생성자와 getter/setter/toString 메서드를 추가해줍니다.

1.2 AdminMapper.java

카테고리 리스트 데이터를 요청할 메서드를 작성합니다.

/* 카테고리 리스트 */
public List<CateVO> cateList();

1.3 AdminMapper.xml

AdminMapper 인터페이스에 추가한 메서드가 실행할 쿼리문을 작성합니다. 

PRODUCT테이블의 모든 리스트를 이름 순으로 출력되도록 쿼리문을 작성했습니다.

<!-- 카테고리 리스트 -->
<select id="cateList" resultType="com.swan.model.CateVO">
	select * from swan_cate order by
	kind_name
</select>

1.4 AdminMapperTests.java

 추가한 메서드가 정상적으로 동작하는지 테스트합니다.

/* 카테고리 리스트 */
@Test
public void cateListTest() throws Exception{
	System.out.println("cateList()..........." + mapper.cateList());
}

1.5 AdminService.java

추가한 Mapper 메서드를 호출할 메서드 선언부를 작성합니다.

/* 카테고리 리스트 */
public List<CateVO> cateList();

1.6 AdminServiceImpl.java 

오버 라이딩하여 AdminServiceImpl 인터페이스에서 선언한 메서드의 구현부를 완성해줍니다.

/* 카테고리 리스트 */
@Override
public List<CateVO> cateList() {
	log.info("(service)cateList........");
	return adminMapper.cateList();
}

2. JSON 데이터 변환

Jackson-databind 라이브러리 추가

pom.xml에 Jackson-databind 라이브러리 코드를 추가해줍니다.

<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<dependency>
	<groupId>com.fasterxml.jackson.core</groupId>
	<artifactId>jackson-databind</artifactId>
	<version>2.12.1</version>
</dependency>

반응형