Notice
Recent Posts
Recent Comments
Link
개발 무지렁이
[Servlet] 웹브라우저와 서블릿(Servlet) 본문
Servlet이란
java 소스안에 html, css, js를 그대로 사용할 수 있다.
=> 자바로 구현된 CGI
🍔 CGI: 서버와 서드파티(우리가 짠 로직)간 데이터 전송을 위한 통신규약
HttpServlet 상속과 init, service, destroy
🎨 Servlet 작성
1) HttpServlet을 상속받는다.
2) 반드시 public class로 선언한다.
3) 브라우저에서 출력될 내용 or 비즈니스로직을 실행 (feat. method 재정의)
- init();
: 객체가 생성된후 최초 한번 호출, servlet에 관한 환경정보 설정
- service(request, response);
: 사용자요청(request)이 들어올때마다 호출
: get방식이면 doGet 호출, post방식이면 doPost 호출
: get과 post방식에서의 하는 일이 별차이 없으면 service로 overriding
(overriding하므로써 더이상 method 호출방식을 분류하지 않는다, default: 요청방식에 따른 분류)
- doGet(request,response);
- doPost(request,response);
- destroy();
: 서블릿이 종료되어야 할때
📌. servlet은 중간다리 역할만, 마크업은 jsp에 넘긴다.
작성한 servlet문서가 브라우저에서 실행되기 위한 xml문서에서의 생성+등록 必
1) 'web xml 문서'에 등록하는 방법 ('프로젝트 관련 설정'을 작성, WEB-INF/lib)
2) '@annotation'방법, '@WebServlet'
멀티쓰레드와 서블릿 매핑
🌐. 웹은 멀티쓰레드.
: 사용자 한명한명은 쓰레드로 동작한다.
(service는 servlet당, 딱 한개만 만들어지고 공유)
⚠️. servlet은 사용자 요청이 들어올 때마다 생성하는 것보다는 미리 여러개 만들어 놓는다. // 사전초기화
urlPatterns에 따라 기능에 맞는 servlet을 매핑(mapping)시킨다.
@WebServlet(urlPatterns = "/lifeCycle", loadOnStartup=1);
: 사용자 한명한명은 쓰레드로 동작한다.
(service는 servlet당, 딱 한개만 만들어지고 공유)
⚠️. servlet은 사용자 요청이 들어올 때마다 생성하는 것보다는 미리 여러개 만들어 놓는다. // 사전초기화
urlPatterns에 따라 기능에 맞는 servlet을 매핑(mapping)시킨다.
@WebServlet(urlPatterns = "/lifeCycle", loadOnStartup=1);
'Backend > Servlet & JSP' 카테고리의 다른 글
[JSP] 액션태그 include와 include 지시자 (0) | 2023.04.24 |
---|---|
[JSP] $의 해석과 동적인 콘텐츠를 생성하고 전달하는 WAS(Servlet Container) (0) | 2023.04.23 |
[JSP] 정보저장을 위한 영속성 범위, scope (0) | 2023.04.23 |
[JSP] 동적인 웹페이지를 위한, 변수개념이 장착된 템플릿 엔진, JSP(Java Server Page) (0) | 2023.04.23 |
[Servlet] 페이지(page) 이동방법, 정보손실과 정보유지 (0) | 2023.04.23 |
Comments