Project

웹 애플리케이션과 서블릿의 관계, 웹 애플리케이션 구동 과정, 서블릿 구동 과정, 서블릿 만들기

우주코딩 2021. 11. 4. 22:50

Table - DAO - Handler

Handler -> DAO -> Table
사용자 입력 -> DAO 를 사용해 처리 -> 사용자에게 결과 출력

 

Dao 는 데이터를 처리한다. 테이블 한 개에 대해 owner 를 갖지만 하나의 dao가 하나의 테이블에 대해 명령을 수행할 때 다른 테이블의 데이터를 가져오기 위해 viewer 가 될 수 있다.

 

1개의 dao만 owner가 되어야한다 -> 유지보수가 쉬워진다.

웹 애플리케이션과 서블릿의 관계

PMS <- 웹 애플리케이션

로그인, 로그아웃, 게시글 등록, 게시글 조회, 프로젝트 생성, 회원 변경

서블릿 = 작은 서비스 조각

웹 애플리케이션 구동 과정

HTTP Client (web browser) 1. 웹 서버에 요청 / 1. 웹 서버에 요청


HTTP Server (web server) -web application server 3.클라이언트에게 응답한다 / 2. 서블릿컨테이너에 요청 전달 / 6.클라이언트에게 응답한다


Application Server (Servlet Container) -web application server / 3. servlet 을 통해 작업을 실행한다 / 5. 웹 서버에 작업 결과 전달

 

HTML
css
Java Script
= static resource (콘텐트가 변하지 않는 자원) 실행x
클라이언트 쪽에서 실행하는 코드 = 작성하는 개발자를 프론트엔드 개발자(front-end developer) 로 지칭한다.
2.웹 서버가 읽는다

 

Servlet 4. 작업 수행 = HTML 생성
Servlet
Servlet
= dynamic resource (실행할 때 마다 콘텐트가 변할 수 있는 자원) 실행o
서버 쪽에서 실행하는 프로그램코드 (자바, sql) = 작성하는 개발자를 백엔드 개발자(back-end developer) 로 지칭한다.

서블릿 구동 과정

요청 전달 -> servlet container -> servlet

  1. 객체를 찾는다 -> 없다면 객체를 생성하여 init() 호출한다.
    객체가 작업할 때 사용할 도구 준비
  2. service() 호출 -> 클라이언트가 요청한 작업을 수행

요청이 들어올 때 마다 이 작업을 수행한다.

 

 

서버 종료 또는 웹 애플리케이션 종료 -> servlet container -> servlet

  1. 생성한 모든 servlet 객체에 대해 destroy() 호출한다.

서블릿 만들기

HTML , css, JavaScript 의 역할

HTML - 화면에 출력할 내용을 구성
CSS - 콘텐트가 출력될 모양을 설정
JavaScript - 콘텐트의 동작 제어