import javax.servlet.http.*;
@SuppressWarnings("serial")
public class 클래스명 extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws IOException {
// GET 처리
}
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws IOException {
// POST 처리
}
}
HttpServlet 상속
서블릿은 javax.servlet.http.HttpServlet 클래스를 상속받아 만들어진다
doGet / doPost
HTTP의 메소드인 GET과 POST에 엑세스 할 때 실행된다.
HttpServletRequest - 요청 정보 관리
클라이언트가 서블릿에 엑세스하는 요청할 때의 정보를 관리하는 객체로 요청에 대한 정보는 이 객체의 메소드를 호출하여 얻을 수 있음
HttpServletResponse - 응답 정보 관리
서블릿에서 클라이언트로 반환하는 정보인 응답 정보를 관리하는 객체다.
1) web.xml 방식
2) 어노테이션 방식
@WebServlet("/myservlet")
public class MyServlet extends HttpServlet {
...
}
url에 매핑될 정보를 @WebServlet()에 추가한다.
회원가입 정보를 입력하면 서버에서 입력된 회원정보를 받고 서버에서 다시 클라이언트으로 보내어 화면에 출력하도록 했다.
구조는 다음과 같다!
JoinServlet.java
@WebServlet("/JoinServlet")
public class JoinServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
String id, pw, name = "";
int age = 0;
name = request.getParameter("userName");
age = Integer.parseInt(request.getParameter("userAge"));
id = request.getParameter("userId");
pw = request.getParameter("userPw");
request.setAttribute("userName",name);
request.setAttribute("userAge",age);
request.setAttribute("userId",id);
request.setAttribute("userPw",pw);
// dispatcher
RequestDispatcher re = request.getRequestDispatcher("/basic/join_dispatcher.jsp");
re.forward(request, response);
}
}
join.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>회원가입</title>
</head>
<body>
<form action="/JoinServlet" method="post">
<h2>회원가입</h2>
이름 : <input type="text" name="userName"><br>
나이 : <input type="text" name="userAge"><br>
아이디 : <input type="text" name="userId"><br>
비밀번호 : <input type="password" name="userPw"><br>
<input type="submit" value="가입하기">
</form>
</body>
</html>
join_dispatcher.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>Title</title>
</head>
<body>
<h2>입력된 회원정보<</h2>
이름 : <b>${userName}</b>
나이 : <b>${userAge}</b>
아이디 : <b>${userId}</b>
비밀번호 : <b>${userPw}</b>
</body>
</html>