Upload
j-b
View
75
Download
2
Embed Size (px)
Citation preview
What is TomcatResponse, Request 객체 생성
클라이언트의 요청에 대한 서블릿 스레드 생성
서블릿 스레드에 아까 만든 객체 넘김
service()가 작업한 response를 HTTP로 클라이언트에게 보냄
서블릿 service() 메소드 호출
어떤 스레드인지는 DD를 이용하여 알아냄
service()
• 요청에 따라 doGet() 혹은 doPost() 메소드를 호출
• doGet()/ doPost() 는 동적인 페이지를 생성
• doGet(), doPost()는 동적인 페이지를 어떻게 생성할까?
얘가 서블릿.
public class DatingServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletReponse response) throws IOException {
String d = Integer.toSting((int) ((Math.random()*6)+1));
printWriter out = response.getWriter(); out.println(“<html> <body>”+ …); }
}
doGet이 요기있넹
얘가 서블릿.
public class DatingServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletReponse response) throws IOException {
String d = Integer.toSting((int) ((Math.random()*6)+1));
printWriter out = response.getWriter(); out.println(“<html> <body>”+ …); }
}
아까 톰캣이 만든 객체
얘가 서블릿
public class DatingServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletReponse response) throws IOException {
String d = Integer.toSting((int) ((Math.random()*6)+1));
printWriter out = response.getWriter(); out.println(“<html> <body>”+ …); }
}
똑똑한 놈이죠. 비즈니스 로직
얘가 서블릿
public class DatingServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletReponse response) throws IOException {
String d = Integer.toSting((int) ((Math.random()*6)+1));
printWriter out = response.getWriter(); out.println(“<html> <body>”+ …); }
} 서기입니다. 프리젠테이션 로직
MVC
• Model: 똑똑한 비즈니스 로직. 자바코드입니다.
• View: 글 잘쓰는 프레젠테이션 로직. JSP입니다.
• Control: 관리직이죠. 일을 받아와서 M과 V에게 줍니다.
M의 일은 M에게 V의 일은 V에게
얘가 서블릿
public class DatingServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletReponse response) throws IOException {
String d = Integer.toSting((int) ((Math.random()*6)+1));
printWriter out = response.getWriter(); out.println(“<html> <body>”+ …); }
}
JSP(V)
자바코드(M)
서블릿(C)
얘가 MVC 디자인 패턴public class DatingServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletReponse response) throws IOException {
자바 클래스가 할 겁니다.
}
JSP가 할 겁니다.
서블릿(C)
얘가 DD
<servlet> <servlet-name> Internal name1</servlet-name> <servlet-class>foo.servlet1<servlet-class> </servlet>
<servlet-mapping> <servlet-name>Internal name 1</servlet-name> <url-patten>/Public1</url-patten> </servlet-mapping>
이런 애들이 많이 있어요.
얘가 DD
<servlet> <servlet-name> Internal name1</servlet-name> <servlet-class>foo.servlet1<servlet-class> </servlet>
<servlet-mapping> <servlet-name>Internal name 1</servlet-name> <url-patten>/Public1</url-patten> </servlet-mapping>
이거는 클라이언트가 알아요 이거 주면 DD가 Internal name1을 알려줘여