일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- phaser
- RDS
- express
- 블록체인
- PL/SQL
- docker
- jQuery
- Cookie
- node.js
- autowired
- 웹게임
- CSS
- JSP
- Servlet
- Ajax
- 암호화
- 배포
- tiles.xml
- JavaScript
- 웹소켓
- HTML
- websocket
- 비트코인
- SQL
- AWS
- EC2
- Spring
- 알고리즘
- 도커
- model1
- Today
- Total
記錄
초기화 파라미터(init-param), WebListener 본문
※ web.xml을 이용한 initpram 설정
※ 주의 (초기화 파라미터 설정 시)
servlet에서 만약 mapping이 지정이 되었다면 그것과 web.xml의 mapping이 충돌하여 오류가 난다. 이를 해결하기 위해서는 servlet에서 지정된 mapping 어노테이션을 삭제하면 정상적으로 initparam이 전송된다.
만약, web.xml의 mapping을 삭제하고 servlet의 어노테이션을 그대로 두면 web.xml에서 설정한 initparam을 인식을 못하고 null이 반영된다. 인식을 못한다는 말이다.
※ 결론
web.xml을 통해 initparam을 설정하고자 한다면 web.xml에서 mapping까지 완료해주고 servlet의 mapping 어노테이션은 삭제한다.
※ servlet을 이용한 initpram 설정
※ ServletContext을 이용한 initparam 설정 및 공유(모든 servlet에서 공유 가능)
※ 모든 servlet에서 공유가 가능하다
cf) 특정 servlet에서만 이용하는 것은 init-param을 이용
vs
모든 servlet 공유하는 initparam을 원하면 context-param을 이용
※ ServletContextListener의 역할과 두 가지 설정 방법
1) web.xml 에서 listener를 지정한다
2) class에서 바로 어노테이션을 통해 listener를 지정한다
※ WebListener를 Servlet LifeCycle 개념과 합쳐서 정리(실행순서)
Listener class의 contextInitialized() -> Servlet의 선처리 @PostConstruct -> Init -> service() or doGet() or doPost() -> destroy() -> Servlet의 후처리 @PreDestroy -> Listener class의 contextDestroyed()
Listener는 웹 어플리케이션의 시작과 종료에 관여하는 것이고 Servlet LifeCycle은 각각의 servlet에 관한 것이다. 각각의 servlet은 웹 어플리케이션 전체를 구성하는 하나의 컴포넌트가 되는 것이다. 웹 어플리케이션이 단위가 큰 것이다.
Servlet 선처리, 후처리 참고 ...
'Web > JSP' 카테고리의 다른 글
스크립트릿 (0) | 2017.12.01 |
---|---|
JSP 동작원리, 개념, 내부객체 (0) | 2017.12.01 |
html_form, 인코딩 차이점(get, post) (0) | 2017.11.28 |
servlet LifeCycle (0) | 2017.11.28 |
doGet, doPost, Context Path (0) | 2017.11.28 |