스프링에서의 비즈니스 영역: 서비스(Service)
1) 인터페이스 생성
요구 사항을 메서드로 정리해서 xxx.Service라는 인터페이스 정의
2) 구현 객체 생성
xxxServiceImpl이라는 구현 객체 생성
※ 비즈니스 계층의 구현
비즈니스 계층: 컨트롤러 <-연결-> DAO
트랜잭션 처리나 예외의 처리를 비즈니스 계층에서 수행하여 컨트롤러로 하여금 처리해야하는 일 분업시켜 줌
1) root-context.xml 설정
<context>를 사용하여 패키지 자동 인식
2) 인터페이스 작성
BoardService.java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | package org.zerock.service; import java.util.List; import org.zerock.domain.BoardVO; public interface BoardService { public void regist(BoardVO board) throws Exception; public BoardVO read(Integer bno) throws Exception; public void modify(BoardVO board) throws Exception; public void remove(Integer bno) throws Exception; public List<BoardVO>listAll() throws Exception; } |
3) 인터페이스 구현
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | package org.zerock.service; import java.util.List; import javax.inject.Inject; import org.springframework.stereotype.Service; import org.zerock.domain.BoardVO; import org.zerock.persistence.BoardDAO; @Service public class BoardServiceImpl implements BoardService{ @Inject private BoardDAO dao; @Override public void regist(BoardVO board) throws Exception { dao.create(board); } @Override public BoardVO read(Integer bno) throws Exception { return dao.read(bno); } @Override public void modify(BoardVO board) throws Exception { dao.update(board); } @Override public void remove(Integer bno) throws Exception { dao.delete(bno); } @Override public List<BoardVO> listAll() throws Exception { return dao.listAll(); } } | cs |
@Service
스프링의 빈으로 인식되기 위해 애노테이션 적용
※ 본 게시글은 코드로 배우는 스프링 웹 프로젝트 책을 참고하여 작성하였습니다.
'Develop > Spring' 카테고리의 다른 글
target폴더 (0) | 2018.09.30 |
---|---|
스테레오 어노테이션(Stereotype Annotation) (0) | 2018.09.30 |
[오류]The reference to entity "characterEncoding" must end with the ';' delemiter (0) | 2018.08.19 |
[오류]Injection of autowired dependencies failed (0) | 2018.08.19 |
[오류]경로깨짐 (0) | 2018.08.19 |
댓글