본문 바로가기
스마트인재개발원/JSP . SERVLET

[JSP/SERVLET] URL Mapping / PrintWriter 객체 / form 태그 / form태그 사용방법 / 데이터 전송 후 개발창에서 데이터 확인방법 / 데이터 꺼내오기

by 죠졍니 2022. 10. 12.
728x90
반응형
SMALL

request

: client로부터 받은 요청에 관련된 정보를 담고있는 객체

 

 

 

URL Pattern

: http://localhost:8081/Servlet/ex01Request?num=123

                                               servlet파일경로

 

 

 

 

URL Mapping

 = '바로가기'

: Web browser에서 Servlet을 동작시키기 위해 실제 Java 클래스의 이름 대신 Servlet을 요청하기위한

문자열을 Servlet 클래스와 Mapping시키는 것

- 경로 자체는 바꿀 수 없지만 맵핑이름은 변경가능

 

 

URL Mapping 사용 이유

1. url 경로가 길고 불편

2. 다른사람들이 사용하지 못하게 하기위해

 

 

 

 

 

PrintWriter 객체

: 텍스트 출력 스트림에 출력해주는 객체

 

1. response.getWriter()메소드 사용하여 생성

PrintWriter out = response.getWriter();

2. out.print() 메소드 통해 출력

out.print("<html>");
		out.print("<body");
        out.print("<h1>정은이의 홈페이지</h1>");
        out.print("</body>");
out.print("</html>");

 

 

 

 

 


form 태그

 

 

 

필수로 들어가는 3가지

 

1. 값을 어디로 보낼지 (action속성)

<form action="http://localhost:8081/Servlet/Ex04">

 

<form action="Ex04">

-> URL Mapping만 적어도 가능

 

 

 

2. 어떤 값을 보내는지 (input태그 name)

<input type="text" name="id">

 

3. 값을 보내는 시점 = 언제보낼것인지 (type속성)

<input type="submit" value="login">

 

 

 

form태그를 하기 위해서는 html 필요

: java파일과 html파일 2개 생성해야함

 

파일 생성방법

servlet: src/main/java ( 우클릭 new -> servlet)

html : src -> main -> webapp ( 우클릭 new -> html file)

 

 

 


form태그 활용한 데이터전송 form만들기

 

 

<html 파일>

<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
	<h1>Data 보내기</h1>
	
	<!-- 
	form태그 : Server로 데이터를 보내주기 위한 태그
	데이터 전송 필수 3가지
	1. 데이터를 가지고 어디로 요청할지 : form태그의 action속성
	-> Servlet으로 보낼 때는 URL Mapping만 적어도 된다.
	
	2. 어떤 데이터를 가져가는가 : input태그의 name속성
	3. 언제 요청을 보낼것인가 : submit타입의 input 또는 button
	-->
	<form action="Ex04">
		Data : <input type="text" name="data">

		<input type="submit" value="데이터전송">
		
		<button type="submit">데이터전송</button>

	</form>
</body>
</html>

 

 

 

<servlet파일>

 

 

 

WebServlet 이름은 간단하게 저장

 

package com;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class Ex04DataSend
 */
@WebServlet("/Ex04")
public class Ex04DataSend extends HttpServlet {
	private static final long serialVersionUID = 1L;

	/**
	 * @see HttpServlet#service(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		
	
	}

}

 

 

-> 결과값

 

 

 

 

 

 

 


데이터 전송 후 개발창에서 데이터 확인방법

 

<개발창>

 

 

 

f12-> network -> f5

 

 

 

 

 -> 입력창에 데이터값 입력후 데이터전송 누르면

 -> payload창에 데이터 저장 확인

 

 

 

 

 

 

 


전송된 데이터 꺼내오기

 

 

1. 파라미터 수집

 

-> input태그 data 하나 : parameter 라 부름

 

 

 

 

 

 

 

2. 파라미터 꺼내기

 

 

html에서 설정한 이름을 확인한 후,

Data : <input type="text" name="data">

 

java에서 getParameter에 저장

String data = request.getParameter("data");

System.out.println(data);

 

 

결과창

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90
반응형
LIST