-
JSP 내장 객체 (1) - JSP로 설문조사폼(sendRedirect..)웹 Web/JSP & Servlet 2022. 1. 17. 13:06
response 내장 객체 : 클라이언트에 대한 응답 처리를 하며, 실행결과를 브라우저로 되돌려 줄 때 사용
response 내장 객체 sendRedirect (1)
<41_form.jsp>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <body> <h2>설문 조사</h2> <form action="42_research.jsp" method="post"> <table> <tr> <td>이름 :</td> <td><input type="text" name="name" size="20"></td> </tr> <tr> <td>성별 :</td> <td> <input type="radio" name="gender" value="male"checked="checked"> 남자 <input type="radio" name="gender" value="female"> 여자 </td> </tr> <tr> <td>좋아하는 계절:</td> <td> <input type="checkbox" name="season" value="1"> 봄 <input type="checkbox" name="season" value="2" checked="checked"> 여름 <input type="checkbox" name="season" value="3"> 가을 <input type="checkbox" name="season" value="4"> 겨울 </td> </tr> <tr align="center"> <td><input type="submit" value="전송"></td> <td><input type="reset" value="취소"></td> </tr> </table> </form> <br> <% response.sendRedirect("https://www.naver.com"); %> </body> </html><42_research.jsp> - 수정x
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <% request.setCharacterEncoding("UTF-8"); String name = request.getParameter("name"); out.print("name: " + name + "<br>"); String gender = request.getParameter("gender"); out.print("성별: " + gender); if(gender.equals("male")) out.print("남성입니다. <br>"); else out.print("여성입니다. <br>"); String seasonArr[] = request.getParameterValues("season"); out.println("당신이 좋아하는 계절은 "); for(String season : seasonArr) { int n = Integer.parseInt(season); // 숫자열로 변환 switch(n) { case 1 : out.println("봄"); break; case 2 : out.println("여름"); break; case 3 : out.println("가을"); break; default : out.println("겨울"); break; } } %> <br> <b><a href= "41_form.jsp">다시</a></b> </body> </html>설문조사 창이 나오지 않고 바로 네이버로 넘어감
response 내장 객체 sendRedirect (2)
p.195
<44_loginForm.jsp>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <form method="post" action="44_testLogin.jsp"> <label for="userid"> 아이디 : </label> <input type="text" name="id" id="userid"><br> <label for="userpwd"> 암 호 : </label> <input type="password" name="pwd" id="userpwd"> <br> <input type="submit" value="로그인"> </form> </body> </html><44_loginTest.jsp>
쿼리 스트링으로 메인페이지에 회원 이름을 넘겨줌
한글을 전송할 것이므로 인코딩
<%@page import = "java.net.URLEncoder" %> <!-- URLEncoder 사용 위해 import --> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <% String id = "choi"; String pwd = "1234"; String name = "최수빈"; request.setCharacterEncoding("UTF-8"); // 한글깨짐 방지 if(id.equals(request.getParameter("id")) && pwd.equals(request.getParameter("pwd"))) { // 아이디,비번이 맞을때만 메인페이지로 response.sendRedirect("44_main.jsp?name= " + URLEncoder.encode(name, "UTF-8")); } else { response.sendRedirect("44_loginForm.jsp"); } %> </body> </html><44_main.jsp>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <h1>환영합니다</h1> <%= request.getParameter("name") %>님 안녕하세요 </body> </html>아이디에 choi, 암호에 1234를 입력하면
환영합니다
최수빈님 안녕하세요
'웹 Web > JSP & Servlet' 카테고리의 다른 글
JSP 내장 객체 (3) - Application 내장 객체 (0) 2022.01.24 JSP 내장 객체 (2) - forward (0) 2022.01.17 JSP 내장객체 (0) - JSP로 설문조사폼 (0) 2022.01.17 JSP 기본 다루기 - 기본태그, 지시자 (0) 2022.01.16 doPost()와 URL Mapping과 쿼리 스트링 (0) 2022.01.16