100 likes | 292 Views
Servlet & J SP. ㅇ Web Server - 웹 브라우저와 같은 클라이언트로부터 HTTP 요청을 받아들이고 , HTML 문서와 같은 웹 페이지를 반환하는 프로그램 - Apache, IIS 등. Servlet & J SP. ㅇ WAS (Web Application Server) - 인터넷 상에서 HTTP 를 통해 애플리케이션을 수행해 주는 미들웨어 - 동적 서버 컨텐츠를 수행하는 것으로 일반적인 웹 서버와 구별되며 , 주로 데이터베이스 서버와 같이 수행
E N D
Servlet & JSP ㅇWeb Server - 웹 브라우저와 같은 클라이언트로부터 HTTP 요청을 받아들이고, HTML 문서와 같은 웹 페이지를 반환하는 프로그램 - Apache, IIS 등
Servlet & JSP ㅇWAS (Web Application Server) - 인터넷 상에서 HTTP를 통해 애플리케이션을 수행해 주는 미들웨어 - 동적 서버 컨텐츠를 수행하는 것으로 일반적인 웹 서버와 구별되며, 주로 데이터베이스 서버와 같이 수행 - 대부분 자바 기반으로 Java EE 표준을 수용하고 있으나, 자바 기반이지만 표준을 따르지 않는 제품과 .NET 기반 등의 계열도 존재
Servlet & JSP ㅇ Servlet 웹서버에서 동작하는 자바 프로그램 자바 클래스가 javax.servlet.http.HttpServlet을 상속받음으로써 서블릿이 됨 출력 스트림을 이용해서 HTML 코드 작성 ㅇ JSP (Java Server Page) HTML에 자바 코드를 삽입하여 웹브라우저로 표현 웹브라우저에서 요청이 있을때 웹서버가 JSP를 최초 한번 자바 코드로 변환한 후 서블릿 클래스로 컴파일 ㅇ Servlet 및 JSP가 동작하기 위한 조건 Servlet 및 JSP를 해석할 수 있는 WAS가 반드시 설치되어야 됨
DNS 서버 ① URL 입력 www.xxx.com ② IP 주소로 변화 211.xxx.xxx.com ③해당HTML페이지 요청 http://www.xxx.xxx/index.html ④요청 분석 HTML파일 읽기 80 포트 ⑤ HTML파일(텍스트) 전송 <HTML> <BODY> … … … index.html PC/웹 브라우저 웹 서버 ⑥ HTML 태그 분석 변환/화면 구성 Servlet & JSP ㅇ HTML 동작 순서 URL DNS 서버 웹서버(HTML 페이지 요청) HTML 파일 로드 웹서버(HTML 페이지 전송) 사용자 브라우저(클라이언트)
DNS 서버 ① URL 입력 www.xxx.com ② IP 주소로 변화 211.xxx.xxx.xxx JSP/서블릿 컨테이너 ③ JSP 페이지 요청 http://www.xxx.xxx:8080/index.jsp 8080 포트 ⑤ 컴파일 index. jsp ④ 요청/분석 넘기기 ⑥ 서블릿 적재 ⑧ 결과 페이지(HTML) 전송 ⑦ 실행 결과 전송 index. jsp <HTML> <BODY> … … … PC/웹 브라우저 서블릿 웹 서버 ⑦데이터 전송 ⑨ HTML 태그 분석 변환/화면 구성 DB Servlet & JSP ㅇ JSP 동작 순서 URL DNS 서버 웹서버(JSP 페이지 요청) JSP 컨테이너로 전송 JSP 파일 파싱 서블릿 생성 서블릿 컴파일 메모리 적재 HTML 형태로 바꾸어서 전송 사용자 브라우저(클라이언트)
Servlet & JSP ㅇURL 구성 http://localhost:8080/MyProject/main.jsp - Tomcat의 경우 일반적으로 8080 포트 사용 - 프로젝트명이Context Path로 사용됨 (server.xml 설정 변경으로 수정 가능) 프로토콜 도메인 포트 컨텍스트path 주소(파일명)
Servlet & JSP ㅇJSP 기본 내장 객체 JSP를 서블릿으로변환시 자동으로 생성해주는 객체
Servlet & JSP ㅇ 서버와의 통신 기본 흐름 WebBrowser (Client) request response Tomcat (Server) 회원가입 Oracle (DB) Dao 로그인 Dto 게시판
Servlet & JSP ㅇ Model 1 방식 JSP 또는 서블릿을 사용하여 데이터 처리와 화면 출력을 모두 담당 User (Client) HTML 생성 JSP or servlet request Oracle (DB) response
Servlet & JSP Dao를 통해 데이터생성 request.setAttribute(“list”, list); servlet(Controller) ㅇ Model 2 방식 MVC 패턴 적용 데이터 처리 작업은 서블릿이 담당하고 화면 출력만 JSP가 담당 User (Client) Dao (Model) request BoardDto Oracle (DB) forward request.getAttribute(“list”); HTML 생성 JSP(View) response