JSP Servlet 기초(2)
- JSP
- 2018. 1. 29. 14:18
이번엔 JSP 에서 form 태그를 이용해 데이터를 넣고 그 데이터를 java로
가져가 보는것을 해보겠습니다
먼저 JSP Servlet 기초 (1) 에서 처럼 패키지와 서블릿 , jsp파일을
만들어줍니다
저는 Form.java 와 form.jsp 로 만들었습니다.
다음 form.jsp 파일에 body 태그를
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | <body> <form action="Form" method="post"> 이름 :<input type="text" name="name" size="10"><br> 아이디 :<input type="text" name="id" size="10"><br> 비밀번호 :<input type="password" name="pw" size="10"><br> 취미 :<input type="checkbox" name="hobby" value="read">독서 <input type="checkbox" name="hobby" value="cook">요리 <input type="checkbox" name="hobby" value="run">조깅 <input type="checkbox" name="hobby" value="swim">수영 <input type="checkbox" name="hobby" value="sleep">취침<br> <input type="radio" name="major" value="kor">국어 <input type="radio" name="major" value="eng">영어 <input type="radio" name="major" value="math">수학 <input type="radio" name="major" value="des">디자인 <input type="submit" value="전송"> </form> </body> | cs |
위와같이 만들어 줍니다. 먼저 form 태그안의 아이디와 비밀번호를 보면
아이디 :<input type="text" name="id" size="10">
비밀번호 :<input type="password" name="pw" size="10">
input 태그는 보통 화면에서 글씨를 입력해줄수 있게 해줍니다.
type을 text로 하게되면 그냥 텍스를 입력할수 있고 password를 하게되면
비밀번호 입력시 보안을위해 아래와 같이 보이지 않게 됩니다.
다음 name 은 각각의 input 태그의 이름을 정한다고 생각하면 좋습니다.
위와 같이 만들어집니다.
이름과 아이디 비밀번호와 체크박스 라디오 버튼을 입력하고 전송을
하면 <form action="Form" method="post"> 에따라 post 방식으로 Form.java
로 데이터들이 보내지게 됩니다.
이제 Form.java 를보겠습니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 | package com.jsp.ex; import java.io.IOException; import java.io.PrintWriter; import java.util.Arrays; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/Form") public class Form extends HttpServlet { private static final long serialVersionUID = 1L; public Form() { super(); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { actionDo(request, response); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { actionDo(request, response); } protected void actionDo(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); String name = request.getParameter("name"); String id = request.getParameter("id"); String pw = request.getParameter("pw"); String[] hobbys = request.getParameterValues("hobby"); String major = request.getParameter("major"); response.setContentType("text/html; charset=euc-kr"); PrintWriter writer = response.getWriter(); writer.println("<html>"); writer.println("<head>"); writer.println("</head>"); writer.println("<body>"); writer.println("이름 : " + name + "<br/>"); writer.println("아이디 : " + id + "<br/>"); writer.println("비밀번호 : " + pw + "<br/>"); writer.println("취미 : " + Arrays.toString(hobbys) + "<br/>"); writer.println("전공 : " + major + "<br/>"); writer.println("</body>"); writer.println("<html>"); writer.close(); } } | cs |
Form.java 를 위처럼 만들어 줍니다.
중간에
위 처럼 오류가 나는부분은 Ctrl+Shift +O 를 이용해
import 해주어야 합니다.
doGet 메소드와 doPost메소드안에
actionDo(request, response)를 넣어주게 되면 jsp 에서 데이터가
get방식으로 오던 post방식으로 오던 actionDo 메소드를 실행시켜줍니다.
29line 에 HttpServletRequest request, HttpServletResponse responsed 에서
HttpServletRequest 는 요청처리객체, HttpServletResponse 는 응답처리 객체입니다
데이터를 요청하고 응답할때 사용됩니다.
31line 에 request.setCharacterEncoding("UTF-8"); 는 한글처리에 사용되며
화면에 한글이 깨지지 않게 해줍니다.
위처럼 데이터를 넣어주고 전송을하게 되면
아래와 같이 내가 입력한 데이터들의 값을 확인할수 있습니다.
'JSP' 카테고리의 다른 글
JSP Servlet 기초(6) 쿠키생성 (2) | 2018.01.29 |
---|---|
JSP Servlet 기초(5) response (0) | 2018.01.29 |
JSP Servlet 기초(4) request + tag (2) | 2018.01.29 |
JSP Servlet 기초(3) 태그 (0) | 2018.01.29 |
JSP Servlet 기초(1) (0) | 2018.01.29 |