Servlet

서블릿 - 응답

dev23 2024. 8. 11. 13:51
반응형

서블릿 응답

- 서블릿 요청 시 PrintWriter를 이용해 html을 응답할 수 있다.

- 예제 서블릿 login2.java를 작성한다.

 

* src/servlet/Login2.java

package servlet;

import java.io.IOException;
import java.io.PrintWriter;

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 Login2
 */
@WebServlet("/login2")
public class Login2 extends HttpServlet {
	private static final long serialVersionUID = 1L;

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		request.setCharacterEncoding("utf-8");
		response.setContentType("text/html;charset=utf-8");	// 응답할 데이터가 HTML임을 설정
		PrintWriter out = response.getWriter();
		
		String userId = request.getParameter("user_id");
		String userPw = request.getParameter("user_pw");
		 
		String data = "<html>";
		data += "<body>";
		data += "아이디 : " + userId;
		data += "<br />";
		data += "비밀번호 : " + userPw;
		data += "</body>";
		data += "</html>";
		out.print(data);
	}

}

 

- 테스트할 로그인 페이지를 작성한다.

 

* WebContent/login.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Login</title>
</head>
<body>
	<form name="frmLogin" method="get" action="login2" encType="utf-8">
		<label>아이디</label>
		<input type="text" name="user_id" />
		<br />
		<label>비밀번호</label>
		<input type="password" name="user_pw" />
		<br />
		<button type="submit">로그인</button>
    </form>
</body>
</html>

 

- 작성 후 브라우저에서 localhost:[port]/[project_name]/login.html을 입력해 로그인 페이지에 접속하여 아이디와 비밀번호를 입력하고 [로그인] 버튼을 누른다.

 

로그인 페이지

 

로그인 시

 

- 값을 입력하고 로그인 버튼을 누르면 서블릿이 html 데이터를 응답한다.

반응형