dullin
덜린의 코딩 항해 일지
dullin
전체 방문자
오늘
어제
  • 분류 전체보기 (257)
    • JAVA (19)
    • JAVASCRIPT (3)
    • HTML_CSS (3)
    • DB (35)
      • Oracle (16)
      • MySQL (17)
    • JAVA_SERVLET (5)
    • 오류노트 (4)
    • Library & API (6)
    • Spring (20)
      • 개발준비(setting) (1)
      • 전자정부프레임워크 (5)
    • 인공지능 (2)
    • Python (13)
    • OpenCV (1)
    • AI-900 (5)
    • Django (6)
    • Linux (0)
    • Android Studio (12)
    • React Native (1)
    • 프로 크리에이트 (1)
    • 오늘의 일기 (0)
    • PHP (2)
    • Next.js (0)

블로그 메뉴

  • 카테고리
  • 글쓰기
  • 홈

공지사항

인기 글

태그

  • 갈증해소완료
  • 강철맷집
  • laravel
  • 오늘도 오류 한모금
  • 예끼에러야
  • 코딩왕이_되는_그_날까지
  • 필사즉생행생즉사
  • 오블완
  • 덤벼라
  • 오갈완
  • 코딩
  • 티스토리챌린지
  • 라라벨
  • 오늘도 즐코딩
  • 오늘도 에러박살
  • 모두_화이팅
  • 개발환경 세팅
  • Safe Mode
  • 덤벼라 스프링
  • 선빵필승

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
dullin

덜린의 코딩 항해 일지

Spring - DB 게시글 데이터 불러보기
Spring

Spring - DB 게시글 데이터 불러보기

2022. 4. 14. 13:29

먼저 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
    'Spring' 카테고리의 다른 글
    • spring - Failed to load ApplicationContext 에러해결
    • spring - 테스트코드 UNREAD 발생! 발생!
    • 프링프링 스프링 상큼한 오류 - 실행 시에 자동종료되는 오류가 뜬다!
    • Spring - DB연동 >> DB에 있는 데이터 가져와서 웹으로 출력
    dullin
    dullin

    티스토리툴바