★ 서블릿을 사용하면 기능별 페이지명을 url에 노출되지 않아 보안에 더 유리하다.
1. class에 HttpServlet 상속받기
@SuppressWarnings("serial")
@WebServlet("/join.do")
public class JoinAction extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
reqPro(request , response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
reqPro(request , response);
}
protected void reqPro(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
RequestDispatcher dis = request.getRequestDispatcher("/03_servlet/01_join.jsp");
dis.forward(request, response);
}
}
★ 필수 @SuppressWarnings("serial") @WebServlet("/join.do") // 해당 페이지명을 정한다. |
★ HttpServlet 을 상속받으면, doGet() 과 doPost() 메소드가 생긴다. -> JSP 에서 POST/GET으로 보내면 각 메서드가 실행된다. ∴ 같은 기능을 하는 새로운 메서드를 만들어 어디로 가든 무조건 실행되게 해야 한다. (reqPro) |
2. class 에서 다시 JSP로 보내준다.
RequestDispatcher dis = request.getRequestDispatcher("/03_servlet/01_joinView.jsp");
dis.forward(request, response);
RequestDispatcher dis = request.getRequestDispatcher("주소"); dis.forward(request, response); |
PLUS) 절대 경로 가져오기
//뒤에 페이지명을 적어 다음과 같이 절대 경로를 사용한다.
<c:set var="contextPath" value="${ pageContext.request.contextPath }" />
<script>
location.href="${contextPath}/join.do";
</script>
'JSP' 카테고리의 다른 글
[JSP] ajax 사용하기_회원가입 유효성 검사 (0) | 2021.12.20 |
---|---|
[JSP] JSTL(Java Standard Tag Library)_ formatNumber/Date (0) | 2021.12.19 |
[JSP] JSTL(Java Standard Tag Library)_ 구구단 & 별찍기 & 확장 for문 (0) | 2021.12.17 |
[JSP] EL(Expression Language) 코드 (0) | 2021.12.17 |
[JSP] JSP에서 javascript 사용하기(1) (0) | 2021.12.13 |
댓글