내용 |
kr.co.javaspecialist.common.web.DispatcherServlet 의 역할
*.do 로 끝나는 요청을 잡아서 주소가 뭐냐에 따라 정해진 컨트롤러(POJO)를 실행시키는
서블릿
예를 들면
사용자가 /emp/list.do 를 실행시키면
디스패처서블릿은 kr.co.javaspecialist.emp.controller.EmpListController
클래스의 process 메서드를 실행시킵니다.
그리고 process 메서드에서 리턴한 뷰페이지로 forward 합니다.
새로운 기능을 추가하기 위해서...
/hello.do?name=kildong 입력하면
화면에 Hello~ Kildong 이라고 출력하는 애플리케이션
1. command.properties 파일에 기능을 실행시키기 위한 URL과
커맨드 클래스 파일의 이름을 기록한다.
/hello.do=kr.co.javaspecialist.hello.controller.HelloController
2. model 클래스 작성
kr.co.javaspecialist.hello.model.HelloService 클래스 작성
public String sayHello(String name) { } 구현
3. controller 클래스 작성
kr.co.javaspecialist.HelloController 클래스 작성
public HelloController implements CommandHandler {
process(req, res) {
파라미터 조회
String name = request.getParameter("name");
모델 객체 생성
HelloService service = new HelloService();
모델 메서드 실행
String result = service.sayHello(name);
request.setAttribute("result", result);
return "/hello/hello.jsp"; //WEB-INF/view/hello.jsp 파일 작성
}
}
4. view 파일 작성
WebContent/WEB-INF/view/hello/hello.jsp 파일 추가
<%= request.getAttribute("result") %>로 출력 |