먼저 db와의 연결테스트를 해야한다.
db에 테이블을 생성해주고,
- src/main/java에
- com.dullinsub.domain패키지 아래
- BoardVO 클래스 생성
package com.dullinsub.domain;
import java.util.Date;
import org.apache.ibatis.type.Alias;
import lombok.Data;
@Data
@Alias("board") // .xml resultType 이름 변경가능
public class BoardVO {
private Long bno;
private String title;
private String content;
private String writer;
private Date regDate;
private Date updateDate;
}
- com.dullinsub.domain패키지 아래
- BoardMapper클래스 생성 >> Dao역할!
package com.dullinsub.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Select;
import com.dullinsub.domain.BoardVO;
public interface BoardMapper { // dao 역할 대신
@Select("SELECT * FROM TBL_BOARD WHERE BNO > 0") <!-- BoardMapper.xml에서 @select 어노테이션 대행 가능-->
public List<BoardVO> getList();
public BoardVO read(Long bno);
public int insert(BoardVO boardVO);
public int insertSelectKey(BoardVO boardVO);
}
- src/test/java 밑에
- com.dullinsub.mapper 패키지 밑에
- BoardMapperTests 클래스 ( 테스트 하려는 클래스의 이름과 같이하는게 좋다. )
package com.dullinsub.mapper;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import java.util.List;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import com.dullinsub.domain.BoardVO;
import lombok.Setter;
import lombok.extern.log4j.Log4j;
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("file:src/main/webapp/WEB-INF/spring/root-context.xml")
@Log4j
public class BoardMapperTests {
@Setter @Autowired
private BoardMapper boardMapper;
@Test
public void testExist(){
assertNotNull(boardMapper);
}
@Test
public void testGetList(){ // 전체목록
List<BoardVO> result = boardMapper.getList();
assertNotNull(result);
result.forEach(log::info);
}
@Test
public void testRead(){ // 선택목록
BoardVO result = boardMapper.read(9L);
assertNotNull(result);
log.info(result);
}
}
+ 테스트 원하는 메서드 명 클릭후 실행하면
해당 메서드만 실행할 수 있음.
먼저 디비에 생성한 테이블을 잘 불러오는지 테스트하기 위해
testGetList() 클릭 후 실행
성공적으로 불러와진것을 확인할 수 있다.
다른 메서드도 동일한 방식으로 테스트해보면 된다.
그럼 다음 글에선 이걸 바탕으로 게시판 형식으로 서블릿을 구현해볼것이다.
반응형
'Spring' 카테고리의 다른 글
spring - Failed to load ApplicationContext 에러해결 (0) | 2022.05.04 |
---|---|
spring - 테스트코드 UNREAD 발생! 발생! (0) | 2022.05.03 |
프링프링 스프링 상큼한 오류 - 실행 시에 자동종료되는 오류가 뜬다! (0) | 2022.04.07 |
Spring - DB연동 >> DB에 있는 데이터 가져와서 웹으로 출력 (0) | 2022.04.05 |
프링프링 - 스프링을 이용한 현재시간출력 feat.서블릿 (0) | 2022.04.05 |