[JSP] HttpServlet 서블릿

 

JSP / Servlet

Servlet


클라이언트의 요청을 처리하고 결과를 응답해주는 자바 웹 프로그래밍 기술



웹 사이트가 클라이언트에게 보이는 과정


(1) 클라이언트가 호스트에게 원하는 웹 페이지를 보여달라고 요청.
     요청할 때 원하는 페이지가 무엇잇지 웹 주소(URL)에 적어서 보낸다.

(2) 사용자의 요청이 톰캣(WAS)에 도착 Apache-Tomcat에 등록되어있는 URL매핑들중 일치하는 자원을 찾는다.

(3) 등록된 자원들 중 사용자의 요청에 따라 다른 결과들이 나오는 페이지를 동적 웹 페이지라고 한다.

(4) 클라이언트의 요청이 올바른 요청이라면(톰캣에 등록된 자원이 맞다면)
     해당 자원을 만들거나 이미 있는 자원을 응답한다.(Servlet 프로그램 실행)

(5) 웹 서버에서 응답한 자원이 요청 보냈던 클라이언트의 웹 브라우저에 도착한다.
     웹 브라우저는 응답받은 내용을 해석하여 사용자에게 보여준다.


Servlet 생성

 

자바 class 생성


HttpServlet 상속 , url패턴 설정 

import javax.servlet.http.HttpServlet;
@WebServlet("/hello")
public class TestServlet extends HttpServlet {

}

HttpServlet을 상속 받고 어느 url에 요청이 들어오면 응답할지에 대한 설정을 @WebServlet 어노테이션으로 할 수 있다.

import javax.servlet.http.HttpServlet;
@WebServlet({"/hello", "/hi"})
public class TestServlet extends HttpServlet {

}

배열형태로 {}안에 여러가지의 url을 설정할 수  있다.


Servlet으로 HTML 코드 작성

 

@WebServlet("/hi")
public class TestServlet extends HttpServlet {
    @Override
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		PrintWriter out = response.getWriter();
		
		out.println("<html><head><title>안녕하세요</title></head><body>");

		out.println("<h1>Hello</h1>");
		out.println("</body><html>");
	}
}

Servlet에서 HTML을 작성하려면 무조건 response객체를 이용해서 '응답' 을 해야 한다.
데이터 타입은 PrintWrite이고 getWriter() 메소드를 사용해서 작성할 수 있다. 

html로 응답을 하기 때문에 html 문법을 맞춰서 작성해야 한다. (<html><head><body> 등 태그를 확실하게 작성하자)

 



댓글

Designed by JB FACTORY