Jsp-서블릿
- 처음에는 서블릿으로 동적인 웹페이지 컨텐츠를 생성했는데 사용하려고 나왔다.
- 그런데 얘는 HTML~Javascript의 웹디자인 요소를 연동하기 힘들어서 jsp가 등장 → 개발 편해짐
- 그럼에도 서블릿이 없어지지않고 계속 존재하는 이유는 2가지
- 서블릿엔 JSP에 없는 서버 측 프로그램 기능이 있다는 점!
- 서블릿은 대기업에서 사용하는 프레임워크의 기초 기술로 사용된다는 점!
- 서블릿의 주요 클래스
- HttpServlet
- HttpServletRequest
- HttpServletResponse
- HttpSession
HttpServlet
- 서블릿을 만들기 위해서 필수적으로 상속해야하는 필수 클래스이다. 존재 목적 자체가 서블릿을 만들기 위함이다. 여러 가지 메소드를 오버라이딩 시킬 수 있다.
- init(), destroy(), service(), doGet() doPost() 등의 메소드를 오버라이딩할 수 있음.
HttpServletRequest / HttpServletResponse
- 요청 / 응답을 위한 클래스이다.
- 주로 doGet이나 doPost 메소드에서 매개변수로 넣어지고 그 메소드 안에서 이 클래스의 메소드를 아래와 같이 사용하곤한다.
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub String msg = request.getParameter("msg"); response.setContentType("text/html; charset=EUC-KR"); PrintWriter out = response.getWriter(); out.println("<html>"); out.println("<body>"); out.println("<h1>Get Servlet 방식</h1>"); out.println("<h2>msg : " + msg + "</h2>"); out.println("</body>"); out.println("</html>"); }
- doGet은 주로 검색이나 조건을 다른 페이지로 전송할 때 사용하는 방식이다. 이 요청방식은 url에 노출되는 특징이 있기에 보안상으로 취약하다.
- doPost는 게시판에 글 입력이나 회원가입할 때 쓰이는 기능이다. get방식과 다르게 url에 노출되지 않으며 html 헤더값에 같이 전송되는 방식이다. 일반적으로 db연동 할 때 insert, update 쿼리문을 실행할 때 사용하는 방식이다.
댓글남기기