JSP 공부를 위한 준비
@WebServlet("/HelloWorld")
public class HelloWorld extends HttpServlet { // <- HttpServlet 클래스를 상속
}
protected void doGet(HttpServletRequest request, HttpServletResponce responce) throws ServletException, IOException { //요청처리 //응답처리
}
protected void doPost(HttpServletRequest request, HttpServletResponce responce) throws ServletException, IOException { //요청처리 //응답처리
}
HTML내 form태그의 method속성이 get일 경우 호출
protected void doGet(HttpServletRequest request, HttpServletResponce responce) throws ServletException, IOException { //요청처리 //응답처리
responce.setContentType("text/html; charset=euc-kr"); // <- setContentType() 메소드를 호출하여 응답방식 결정
PrintWriter writer = responce.getWriter(); // <- getWriter() 메소드를 이용하여 출력 스트림을 얻음
writer.println("<html>"); // 출력스트림의 println() 메소드를 이용하면 웹 브라우저에 출력
writer.println("<head>");
writer.println("</head>");
writer.println("<body>");
writer.println("<h1>Hello World ~~ </h1>");
writer.println("</body>");
writer.println("</html>");
writer.close(); // 출력객체 닫기
}
HTML내 form태그의 method속성이 post일 경우 호출
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
System.out.println("doPost");
response.setContentType("text/html; charset=euc-kr");
PrintWriter writer = response.getWriter();
writer.println("<html>");
writer.println("<head>");
writer.println("</head>");
writer.println("<body>");
writer.println("<h1>POST 방식 입니다. 따라서 doPost 메소드 호출 되었습니다.</h1>");
writer.println("</body>");
writer.println("</html>");
}
웹 어플리케이션을 구분하기 위한 path
요청 응답의 가지수
1. client -> webserver -> db
1. client -> was -> db
1. client -> webserver -> was -> db
3번 : client가 요청을 보내면 webserver가 정적인부분 처리하고 was로 동적인 기능을 요청 was에서 servlet 객체 생성하고 객체마다 스레드를 할당한다. 그리고 스레드 안에서 서비스가 이루어지고 get 또는 post가 처리된다. 그 후 db에서 받고 반대로 응답을 진행한다.
Servlet의 라이프사이클 중 init()과 destroy()메소드와 관려낳여 선처리(init()전)과 후처리(destroy()후) 작업가능
1. Servlet 객체생성
1. 선처리 : @PostConstruct
1. Init() 호출
1. service(), doGet, doPost() 호출
1. destory() 호출
1. 후처리 : @PreDestroy