본문 바로가기
기초 및 언어/▶ Java&JSP

03. JSP_requset & post ,get

by 류딩이 2025. 9. 8.

📌 JSP 내장 객체 — request

JSP에서는 클라이언트(브라우저)가 보낸 데이터를 받기 위해 **내장 객체(request)**를 사용합니다.
HTML 폼에서 입력한 값이 서버(JSP)로 전송되면, JSP는 request.getParameter() 메서드를 통해 해당 값을 읽어올 수 있습니다.

 


한글 깨짐 방지 (한글 처리)

request.setCharacterEncoding("UTF-8"); // 한글 깨짐 방지

예제1

 

Ex01_form 

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

    <form action="Ex01_result.jsp" method ="post">
    	이름 : <input type = "text" name = "name"><br>
    	나이 : <input type = "text" name = "age"><br><br>
    	
    	<input type = "submit" value = "확인">
    </form>

📝 설명

  • method="post" → 데이터를 POST 방식으로 전송
  • name="name", name="age"
  • → 입력값이 각각 request.getParameter("name"), request.getParameter("age")로 JSP에서 읽힘

 

Ex01_result.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

Ex01_result.jsp<br>

<%	 
	request.setCharacterEncoding("UTF-8"); // 한글 깨짐 방지
	String a = request.getParameter("name"); 
	String b = request.getParameter("age"); 
%>

이름 : <%=a %><br>
나이 : <%=b %><br>

 


📌 실행결과   post vs get

 

Ex01_form (method = post)실행시

  • post방식은 한글처리를 반드시 해주어야함
  • 보안이 필요한 데이터는 post를 사용
  • request.setCharacterEncoding("UTF-8"); // 한글 깨짐 방지

 

 

 

 


Ex01_form (method = get)실행시 

  • 주소창에 입력한 값이 출력
  • method의 기본값은 get이다


예제2

 

Ex02_form

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

    <form action = "Ex02_result.jsp" method = "post">
		아이디 : <input type="text" name = "id"><br>
		비밀번호 : <input type="text" name ="pw"><br>
		성별 :
		<input type = "radio" name = gender value = "남자">남자
		<input type = "radio" name = gender value = "여자">여자 <br>
		 
		취미 :
		<select name = "hobby">
			<option value = "등산"> 등산 </option>
			<option value = "요리"> 요리 </option>
			<option value = "공부"> 공부 </option>
			<option value = "게임"> 게임 </option>
		</select>
		<br>
		
		<input type = "submit" value ="전송">
		<input type = "reset" value ="초기화">
    </form>

 

Ex02_result.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
Ex02_result.jsp
<br>

<% 
	request.setCharacterEncoding("UTF-8"); // 한글 깨짐 방지
	
	String id = request.getParameter("id");
	System.out.println("id " + id); // 콘솔 출력
	
	String pw = request.getParameter("pw");
	String gender = request.getParameter("gender");
	out.print("성별 :" + gender + "<br>" );
	
	/* String hobby = request.getParameter("hobby"); */
	
	String addr = request.getParameter("addr");
	System.out.println("addr " + addr); // 콘솔 출력
	out.print("addr :" + addr + "<br>" ); // 웹 출력
%>

	
<!-- 웹 출력 -->
아이디 : <%=id %><br>
비밀번호 : <%=pw %><br>
성별 : <%=gender %><br>
취미 : <%=request.getParameter("hobby") %><br>	
주소 : <%=addr %>

 

 

📌 정리

  • request 내장 객체 : 클라이언트의 요청 정보를 저장하고 있는 객체
  • request.getParameter("파라미터명") : HTML form의 입력값을 문자열로 반환
  • request.setCharacterEncoding("UTF-8") : POST 방식에서 한글 깨짐을 방지

👉 request는 요청한 페이지 → 요청받은 페이지로 데이터를 전달하는 다리 역할을 한다