티스토리 뷰

728x90
<%@ 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태그로 controller거쳐서 데이터 전달하기
	<form action="<%=request.getContextPath()%>/Example2ServletController" method="post">
		<ul>
			<li><label for="data1">data1</label><input type="text" id="data1" name="data1" /></li>
			<li><label for="data2">data2</label><input type="text" id="data2" name="data2" /></li>
			<li><button>전송</button></li>
		</ul>
	</form>
	
    	//a태그 내부에 data1값, data2값 넣어서 전달하기
	<a href="<%=request.getContextPath()%>/Example2ServletController?data1=abcd&data2=1234">전송</a>
</body>
</html>

 

import java.io.IOException;

import javax.servlet.RequestDispatcher;
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 Example2ServletController
 */
@WebServlet("/Example2ServletController")
public class Example2ServletController extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Example2ServletController() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// 여기서부터
		System.out.println("GET 호출");
		
		String data1 = request.getParameter("data1");
		String data2 = request.getParameter("data2");
		
		System.out.println(data1+", "+data2);
		//바로 위까지가 페이지>서블릿 데이터 전송
		
		//data1, data2라는 이름으로 속성명 설정 후 data1, data2 데이터 할당
		request.setAttribute("data1", data1);
		request.setAttribute("data2", data2);
		
		//forward방식
		 RequestDispatcher rdp = request.getRequestDispatcher("/ch08/example2_result.jsp");
		//rdp.forward(request, response)가 있어야 servletController에서 result페이지로 연결 가능
		 rdp.forward(request, response);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		System.out.println("POST 호출");
		doGet(request, response);
	}

}
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%
	//forward로 받을 때 사용
	String data1 = (String)request.getAttribute("data1");
 	String data2 = (String)request.getAttribute("data2");  

%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<h1>example2.jsp 결과 페이지</h1>
	<h2>data 1 : <%=data1 %></h2>
	<h2>data 2 : <%=data2 %></h2>
</body>
</html>

 

 

 

import java.io.IOException;

import javax.servlet.RequestDispatcher;
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 Example2ServletController
 */
@WebServlet("/Example2ServletController")
public class Example2ServletController extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public Example2ServletController() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// 여기서부터
		System.out.println("GET 호출");
		
		String data1 = request.getParameter("data1");
		String data2 = request.getParameter("data2");
		
		System.out.println(data1+", "+data2);
		//바로 위까지가 페이지>서블릿 데이터 전송
		 
		//sendRedirect방식
		//이렇게하면 값 전송 안됨
		//response.sendRedirect(request.getContextPath()+"/ch08/example2_result.jsp");
		//쿼리문안에 전송할 값을 넣어줘야함
		response.sendRedirect(request.getContextPath()+"/ch08/example2_result.jsp?data1="+data1+"&data2="+data2);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		System.out.println("POST 호출");
		doGet(request, response);
	}

}

 

 

728x90
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
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
글 보관함