[Backend]Servlet

ERror.ASER·2021년 3월 31일
0

Backend

목록 보기
1/4

Servlet이란?

  • 자바 서블릿(Java Servlet)은 자바를 사용하여 웹이지를 동적으로 생성하는 서버측 프로그램 혹은 그 사양을 말하며 흔히 서블릿이라고 불린다.
  • 자바 서블릿은 웹 서버의 성능을 향상하기 위해 사용되는 자바 클래스의 일종이다.
  • HTML in JAVA

Servlet이 하는 일

  1. data get
  2. Logic - Business
  3. response page

Servlet Lifecycle

  • servlet class는 javaSE에서의 class와는 다르게 main method가 없다. 즉, 객체의 생성부터 사용(method call)의 주체가 사용자가 아닌 servlet container에게 있다.
  • client가 요청(request)하게 되면 Servlet Container는 Servlet 객체를 생성(1번만)하고, 초기화(1번만)하며, 요청에 대한 처리(요청시마다 반복한다)를 하게 된다.
  • Servlet 객체가 필요 없게 되면 제거하는 일도 Servlet Container가 담당하게 된다.

  • 서블릿은 init () 메소드를 호출하여 초기화된다.
  • 서블릿은 service () 메소드를 호출 하여 클라이언트의 요청을 처리한다.
  • 서블릿은 destroy () 메소드를 호출하여 종료된다.
  • 마지막으로, 서블릿은 JVM의 가비지 컬렉터에 의해 가비지 수집된다.

Servlet에서의 parameter 처리

Parameter 전송 방식

GETPOST
특징전송되는 데이터가 url뒤에 QueryString으로 전달된다. 입력 값이 적은 경우나 데이터가 노출이 되도 문제가 없을 경우에 사용한다.url과 별도로 전송된다. Http header 뒤 body에 입력 스트림 데이터로 전달된다.
장점간단한 데이터를 빠르게 전송한다. from tag 뿐만 아니라 직접 url에 입력하여 전송 가능.데이터의 제한이 없다. 최소한의 보안 유지 효과를 볼 수 있다.
단점데이터 양에 제한이 있다. 전송 가능한 데이터의 사이즈는 2kb(2048bytes)로 제한된다.전달 데이터의 양이 같을 경우 GET방식보다 느리다. 전송 패킷을 body에 데이터를 구성해야 하기 때문이다.

출처
https://shlee0882.tistory.com/192

profile
지우의 블로그

0개의 댓글