[Spring+JSP]CRUD 게시판 만들기

[스프링]MVC2방식 CRUD 게시판 만들기 7.Service 작성

나스닥 엔지니어 2018. 7. 10. 13:52

* Service : 유지보수와 로직프로세스를 유연하게 처리하기 위한 중간 단계.

- 프레임워크 디자인패턴에 들어가며, 프로젝트 규모가 커질수록 관리하기 용이함

controller -> service(interface) -> ServiceImpl -> dao 



1. 서비스 인터페이스 구성


1-1. 메인 디렉토리에 com.myp.service 패키지 생성



(New -> Package)


(Name : com.myp.service)



1-2. service패키지에 BoardService 인터페이스 생성



(service 패키지 우클릭 -> New -> Interface)


(인터페이스 Name : BoardService)



- 컨트롤러에서 요청될 service 메소드 작성




- 전체코드



package com.myp.service;


import java.util.List;


import com.myp.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;

}



2. 서비스 클래스 구현


2-1. BoardServiceImpl 클래스 생성



(service 패키지 우클릭 -> New -> Class)



(Interfaces -> Add.. -> BoardService 인터페이스 등록)



(클래스 네임은 BoardServiceImpl)



- 컨트롤러에서 요청될 서비스로직 구현





- 전체 코드


package com.myp.service;


import java.util.List;


import javax.inject.Inject;


import org.springframework.stereotype.Service;


import com.myp.domain.BoardVO;

import com.myp.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();

}


}