20240930(월) Server

Dodo Lee·2024년 9월 30일

[ Servlet ]

1. 웹 서비스

hteml/css/js -> 웹 페이지
: 사용자가 서버로 요청을 보내면 찾아서 사용자에게 응답

1) 정적 서비스 : 요청 할 때마다 항상 동일한 결과(웹 서버 : HTML/CSS/JS/이미지)

Apache HTTP Server / Nginx

2) 동적 서비스 : 요청에 따라 다른 결과를 나타내는 것(WAS : 로직 실행, DB와 연동 동적인 결과 생성)

Apache Tomcat, JBoss, WebLogic...

2. Servlet Container

  • 배포를 위한 포트 연결
  • 웹 서버 통신을 위한 소켓, IO스트림 생성해주는 역할을 함
  • Apche Tomcat에서는 8080으로 포트번호 기본 지정

3. IO 스트림 생성

-> HttpServletRequest : 요청 / HttpServletResponse : 응답

4. Servlet이란?

웹 서비스를 위한 자바 클래스
(자바를 이용하여 웹을 만들기 위해 필요한 기술)

  • 서블릿을 관리해 주는 것 : 서블릿 컨테이너(= WAS ; 아파치 톰캣)

5. 특징

  • 클라이언트의 요청에 대해 동적으로 작동하는 웹 애플리케이션 컴포넌트
    : 클라이언트 요청에 대한 서버 응답 시 미리 만들어둔 화면(정적)이 아닌,
    요청을 받을 때 마다 알맞은 화면을 만들어(동적) 응답함
  • HTML을 사용하여 요청에 응답
  • MVS Model2패턴에서 Controller로 이용
  • http프로토콜 서비스를 지원하는 jakarta.servlet.http.HttpServlet 클래스를 상속 받음

6. 서블릿 상속 관계

  • jakarta.servlet.http.HttpServlet를 상속 받아 메소드를 구현해야 함.

7. Get과 Post의 차이

Get : 요청한 주소가 주소창에 노출
-> 게시판 조회, 뉴스 기사 조회
Post : 주소창에 노출하지 않고 HTTP Body에 포함하여 전송
-> 회원가입, 로그인 .. (클라이언트가 요청 시 데이터를 꼭 필수로 전달해야 하는 경우)

[ Server : Apache Tomcat ]

1. 아파치 톰캣(Apache Tomcat)

Java로 웹 애플리케이션을 만들기 위해
JSP(Java Server Page)나 서블릿(Servlet)을 사용해
서버와 통신하기 위해서는 서거바 구축이 되어 있어야 함
-> 이 때 우리가 사용할 서버가 아파치 톰캣

profile
연습생

0개의 댓글