서블릿

hanahana·2023년 3월 16일
0

spring 스터디

목록 보기
2/5

Html Form 데이터 전송

form을 통해 post로 정보를 전송한다(http request)
content type=application/x-www.for~~~~~
이렇게 http요청한 정보를 구현하다면
소켓을 연결하고, 정보를 파싱해서 읽고, post인지get인지 파악해야 한다
content타입을 읽고 body내용을 파싱하여 데이터를 읽는다... 이런 긴 로직을 거쳐야 한다.

servlet

위의 로직을 servlet이 자동으로 처리해준다.

@webserver(name='url')
public class name() extends HttpServlet{
	@override
    protected void service(~~~~)
}

서블렛은 위에 입력한 url을 호출하여 코드를 실행하게 할수있다.
요청정보 HttpServletRequest
응답정보 HttpServletResponse를 처리해주는것이 servlet이다

정리

http요청시 was는 requset response객체를 만들어 서블릿응ㄹ 호출한다
개발자는 request객체에 http요청정보를 편리하게 꺼내고
respons객체에 응답정보를 담는다
이 응답객체를 servlet이 처리하여 view로 보여준다.

서블릿 컨테이너는 WAS의 생명주기를 관리해준다.

  • 톰캣처럼 서블릿을 지원하는것을 was를 서블릿 컨테이너라고함
  • 서블릿 컨테이너는 서블릿 객체를 생성, 초기화 호출, 종료하는 생명주기를 관리한다.
  • 서블릿 객체는 싱글톤으로 관리한다.
    • 요청이 올때마다 생성하는것은 불필요하다.
    • 그래서 서블릿객체를 미리 만들어 재 활용한다
    • 모든 요청은 같은 서블릿 객체 인서튼스에 접근한다
    • 그렇기때문에 변수를 공유하기때문에 주의가필요하다.(같은것을 사용해서 숨겨야할 정보가 보일수있음)
  • 동시 요청을 위한 멀티쓰레드 처리를 지원한다
profile
hello world

0개의 댓글