brograming
CommandHandler_Day38 본문
CommandHandler
Request, Response를 매개변수로 가지는 process 메서드를 가지는 인터페이스
process 메서드는 추상 메서드의 형태를 가진다.
Handler.java
package handler;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
//모든 요청 처리 클래스의 부모
public interface Handler { //파라미터로 request, response 받음
String process(HttpServletRequest request, HttpServletResponse response);//반환타입 string
}
Handler.java로부터 상속받은 Handler들.
pocess를 이전 서블릿에서 작성한 내용으로 완성했다.
JoinHandler.java
package handler.member;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import handler.Handler;
import member.MemberService;
import member.MemberVo;
public class JoinHandler implements Handler {
@Override
public String process(HttpServletRequest request, HttpServletResponse response) {
// 요청 처리에 사용할 req, res를 파라미터로 받고, 결과페이지 경로를 리턴값으로 반환
// String은 뷰페이지(결과페이지) 경로를 String으로 반환
// TODO Auto-generated method stub
// System.out.println("get방식 요청 처리");
String view = "";
if(request.getMethod().equals("GET")) {
view = "/member/Join.jsp";
}else {
String id = request.getParameter("id");
String pwd = request.getParameter("pwd");
String name = request.getParameter("name");
String email = request.getParameter("email");
MemberService service = new MemberService();
service.join(new MemberVo(id,pwd, name, email));
view = "redirect :/index.jsp";
}
return view;
}
}
EditHandler.java
package handler.member;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import handler.Handler;
import member.MemberService;
import member.MemberVo;
//url: /member/edit.do
public class EditHandler implements Handler {
@Override
public String process(HttpServletRequest request, HttpServletResponse response) {
// TODO Auto-generated method stub
String view = "";
if(request.getMethod().equals("GET")) {
String id = request.getParameter("id");
System.out.println(id);
MemberService service = new MemberService();
MemberVo m = service.getMember(id);
//검색한 결과를 request에 담는다. setAttribute(이름, 값);
request.setAttribute("m", m);
view = "/member/edit.jsp";
}else {
String id = request.getParameter("id");
String pwd = request.getParameter("pwd");
String name = request.getParameter("name");
MemberService service = new MemberService();
service.editMyInfo(new MemberVo(id,pwd, name, ""));
view = "redirect :/index.jsp";
}
return view;
}
}

'Kosta' 카테고리의 다른 글
| JQUERY_Day40 (0) | 2023.04.13 |
|---|---|
| Properties. load(), keySet() (0) | 2023.04.11 |
| DispatcherServlet / commandHandler / commands.properties_Day38 (0) | 2023.04.11 |
| 파일 다운로드_Day38 (0) | 2023.04.11 |
| 로그인(세션과 쿠키)_Day31, Day32 (0) | 2023.03.30 |