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);
결과창
'스마트인재개발원 > JSP . SERVLET' 카테고리의 다른 글
[JSP/SERVLET] 구구단 테이블형태로 출력하기 (+ 테이블 색상변경) (0) | 2022.10.13 |
---|---|
[JSP/SERVLET] 숫자2개 입력받아 덧셈 결과값 새로운 문서로 불러오기 / 숫자 입력하여 요청한 값만큼 테이블 만들기 (0) | 2022.10.12 |
[JSP/SERVLET] URLMapping이란? URLMapping 변경방법 (0) | 2022.10.11 |
[JSP/SERVLET] IP주소에 따른 다른 출력물 출력하기 (0) | 2022.10.11 |
[SERVLET] 내 IP주소 설정 방법 / response 사용하여 html 문서작업하기 (0) | 2022.10.11 |