반응형
doGet 방식
Index.jsp 페이지에서 "로그인" 버튼을 클릭하면 서블릿에서 doGet 으로 받아와 join.jsp 로 연결해준다. join.jsp 페이지에는 입력할 수 있는 폼 양식이 있다. 클라이언트가 폼 양식을 입력하고 제출하고 서블릿으로 연결하면 doPost에서 값들을 받아올 것이다.
RequestDispatcher 을 이용해 해당하는 jsp 페이지로 연결한다.
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
// 로그인 홈 뷰페이지 이동
RequestDispatcher dis = request.getRequestDispatcher("/test/join.jsp");
dis.forward(request, response);
}
doPost
doPost에서는 폼 파라메터르 읽어 결과페이지를 출력하도록 연결해야한다.
1. id, password, phone 읽기, 연결하는 방법
request.getParameter로 값을 받아와 변수에 담아주는 방법이다.
String id = request.getParameter("id");
String pwd = request.getParameter("pwd");
String phone = request.getParameter("phone");
2. 체크박스 읽기, 연결하는 방법
체크박스처럼 입력값이 여러개인 값들을 읽을때 getParameterValues 를 사용한다.
값이 여러개이기 때문에 배열 변수에 담는다.
String[] ch = request.getParameterValues("ch");
3. 라디오 버튼/콤보 박스/히든/여러줄 입력 읽기, 연결하는 방법
Radio Button : ra
Combo box : sel
여러줄 입력은 txt 로 이름을 부여하였다.
Hidden : h
String ra = request.getParameter("ra");
String sel = request.getParameter("sel");
String txt = request.getParameter("txt");
String h = request.getParameter("h");
request.setAttribute로 처리결과 뷰 페이지에 담아 전달하기
처리 결과를 뷰 페이지에 전달하기 위해 요소 속성값을 담아 전달한다.
request.setAttribute("id", id);
request.setAttribute("pwd", pwd);
request.setAttribute("phone", phone);
request.setAttribute("ch", ch);
request.setAttribute("ra", ra);
request.setAttribute("sel", sel);
request.setAttribute("txt", txt);
request.setAttribute("h", h);
뷰 페이지에서 값 받아오기
EL 표현식 ${} 을 이용해 값을 받아온다.
<body>
id = ${id }
<br /> pwd = ${pwd }
<br /> phone = ${phone }
<br /> ra = ${ra }
<br /> sel = ${sel }
<br /> txt = ${txt }
<br /> h = ${h }
<br />
<% //스크립트릿. 자바코드 영역. 자바 작성하는 영역 -> 원래는 jstl 루프 돌리는 코드 사용한다.
String[] ch = (String[]) request.getAttribute("ch");
for (int i = 0; i < ch.length; i++) {
out.print(ch[i] + "<br/>"); //out : jsp의 내장 객체. 응답 페이지의 출력을 담당한다.
}
%>
반응형