2020.12.07 고급자바 수업노트

 


interface  파일로 만든다. 



package kr.or.ddit.web;


import java.io.IOException;


import javax.servlet.ServletException;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;


public interface IAction {

//이 IAction 인터페이스를 implements한 클래스에서 View(jsp문서)

//결정하고 해당 View페이지로 redirect할 것인지 forward 할 것인지

// 결정하는 메서드 

public boolean isRedirct(); 

//IAction 인터페이스를 implements한 클래스의 process메서드를 호출해서 

//URI를 기준으로 한 하나의 요청처리를 위임하고 View페이지를 반환하는 메서드 

public String process(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException;

}

-----------------------------------------------------------------------------------------------

IAction 을 상속받은 애 


package kr.or.ddit.member.action;


import java.io.IOException;

import java.util.List;


import javax.servlet.ServletException;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;


import kr.or.ddit.member.service.IMemberService;

import kr.or.ddit.member.service.MemberServiceImpl;

import kr.or.ddit.member.vo.MemberVO;

import kr.or.ddit.web.IAction;


public class MemberListAction  implements IAction {


@Override

public boolean isRedirct() {

//밑에 있는 process 를 redirect 로 사용하고 싶은경우에는 true ,

                // forward일 경우에는 false를 반환한다. 


return false;

}


@Override

public String process(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

//실제로 처리할 내용을 기술하고, 

               //처리가 끝난 후 보여줄 View페이지를 반환하면 된다. (여기서는 jsp파일) 

//URI 에 맞는 작업을 진행한다. ( 예 : 전체 회원정보 가져오기 ) 

                //service 객체 받아오기 

IMemberService memService = MemberServiceImpl.getInstance();

                //실행해서 받은 list ( db처리 후 ) 

List<MemberVO> memList = memService.getALLMemberList();


//가져온 정보를 Request 객체의 setAttribute() 메서드를 이용해서 

// ==> view 페이지로 전달할 데이터를 셋팅한다. 

request.setAttribute("memList", memList);

                //문자열을 반환한다. 

return  "/member/memberList.jsp"; //viewPage 설정 


}


}

-----------------------------------------------------------------------------------------------

package kr.or.ddit.web;

import java.util.Enumeration;
import java.util.HashMap;
import java.util.Map;
import java.util.ResourceBundle;

//uri_mapping.properties 파일에 설정된 URI 에 맞는 Action 객체를 구해와서 인스턴스를 생성해서 반환 




-----------------------------------------------------------------------------------------------


-----------------------------------------------------------------------------------------------


controller 는 실행해주는것 뿐임 

IAction 은 인터페이스이다. 


<!--    <servlet-name>testController</servlet-name>

    <servlet-class>kr.or.ddit.controller.TestController2</servlet-class>

    <servlet-class>kr.or.ddit.web.WebController</servlet-class>

  </servlet>

  

  <servlet-mapping>

   <servlet-name>testController</servlet-name>

   <url-pattern>*.do</url-pattern>

  </servlet-mapping> -->

댓글