이번 포스팅에서는 이전시간에 설정한 것들을 바탕으로 비즈니스 로직을 구현해보겠습니다.
Domain 객체를 만들고, Mapper.xml 파일을 설정하고 테스트 코드를 작성하면서 DAO 클래스를 만들어볼게요.
우선 비즈니스 로직 구현을 위해서 웹어플리케이션의 기능을 알아봐야합니다.
아래 화면을 보면 우리가 필요한 기능들을 알 수 있어요.
-전체 글 조회
-특정 글 조회
-수정
-삭제
-글쓰기
각각 기능 수행에 필요한 쿼리문들도 떠오를 것입니다.
-전체 글 조회(slect *from tablename)
-특정 글 조회(select *from tablename where id = #{id})
-수정 (update tablename set column1 = #{...}, column2 = #{....})
-삭제 (update from tablename)
1. 우선 비즈니스 로직 구현에 앞서서 Domain Object(도메인 객체)를 생성해줘야합니다.
도메인 객체는 비즈니스 로직에서 대상이 되는 객체입니다.
비즈니스 로직에서 필요한 속성이 있는 객체입니다.
이 도메인 객체가 프로젝트에서 VO(Value Object) 혹은 DTO(Data Transfer Object)가 됩니다.
우리가 필요한 Board 테이블을 생성했었는데요. 테이블의 칼럼과 우리가 만들 도메인 객체의 필드는 동일합니다.
아래 테이블을 참고해서 도메인 객체를 생성해줍니다.
테이블을 참고해서 짠 코드는 아래와 같습니다. Getter와 Setter, toString 메소드도 만들어 주세요.
이클립스의 자동생성기능을 이용하면 손쉽게 만들 수 있습니다.(사용방법은 생략합니다.
그리고 저번 포스팅에서 만들었던 것을 참고해서 JUnit test case를 만들어줍니다.
이제부터 본격적으로 DAO를 구현하기 전에 mapper.xml 파일을 만들어주겠습니다.
package explorer에서 Ctrl + N을 누르고 mybatis를 검색해주세요. 그리고 Mybatis Mapper XML을 선택합니다.
Next를 눌러주세요.
Finish를 눌러주면 src 폴더 밑에 Mapper.xml 파일이 생성됩니다. Src/main/resources아래에 com.SpringBoard.mappers 패키지 아래에 위치시켜주세요. 아래와 같이요. (applicationContext.xml은 무시해주세요.)
2. Mapper.xml을 열어주세요. 기본설정된 내용들 중에서 mapper 엘리먼트와 resultMap 엘리먼트만 남겨주세요. 아래처럼요.
3.그리고 Mapper.xml 파일을 수정해주세요.
4.그리고 nameSpace의 경로에 아래와 같은 인터페이스를 만들어주세요.
5. 그리고 mybatis-config 설정의 주석처리를 아래처럼 풀어주세요.
6.이제 전체 게시물 목록을 불러오는 기능을 구현해보겠습니다. Mapper.xml에 아래 코드를 추가해주세요.
11. 데이터를 몇개 넣어서 다시 실행하면 콘솔창에 데이터가 보일 것입니다.
아마 이 포스팅을 읽으면서 많이 혼란스러우실 거라고 생각합니다.
VO에 DAO에 Mapper 인터페이스는 또 뭐고...Mapper.xml은 뭔지...정말 헷갈리실거에요. 저도 포스팅을 올리면서 헷갈렸습니다.
하지만 계속 따라하다보면 익숙해지고 개념들이 익숙해지실거에요. 수고하셨습니다.
'Spring Framework 개발 일지 > Spring으로 게시판 만들기' 카테고리의 다른 글
FirstSpringBoard#3-3] 수정, 삭제, 특정 게시물 조회 기능 구현 & Service 인터페이스 구현 (0) | 2017.08.27 |
---|---|
FirstSpringBoard#3-2] 프로젝트 과정 설명 & 비즈니스로직 구현하기(게시물 등록 하기) (0) | 2017.08.25 |
FirstSpringBoard#2]마이바티스와 연동하기 (0) | 2017.08.24 |
FirstSpringBoard#1-2] 메이븐 의존성 추가 (0) | 2017.08.24 |
FirstSpringBoard#1-1]프로젝트 생성 (0) | 2017.08.22 |