Java SE 프로그램은 개발자가 main() 메소드 안에 구현한 순서대로 실행됩니다. 즉, 프로그램이 실행되는 순서를 개발자가 제어할 수 있게 되는 것입니다.
반면 Java EE 프로그램은 실행의 흐름을 개발자가 아닌 컨테이너가 제어합니다.
이처럼 개발자가 아닌 제3자가 프로그램의 실행 흐름을 제어하는 특성을 두고 IoC(Inversion of Control) 즉, 우리말로 번역하면 "제어의 역전"이라고 부릅니다.
대표적으로 서블릿이 IoC 특성을 가지고 있습니다. Java EE 기반 프로그램을 개발할 때에는 애플리케이션 컨테이너들이 프로그램을 어떤 순서로 실행시키는지를 알고, 해당 순서에 맞게 개발해야 합니다. 다음은 서블릿의 실행 순서입니다.
1) 클라이언트로부터 요청을 받는다.
2) 최초의 요청인지 판단한다.
3) 서블릿 객체를 생성한다.
- 최초의 요청일 경우에만 생성한다.
- 이후의 요청에 대해서는 생성해 놨던 객체를 계속 재사용한다.
4) init() 메소드 실행
- 서블릿 객체가 생성될 경우에 실행됩니다.
5) service() 메소드 실행
- 실행하는 서블릿의 요청 순서에 상관없이 요청이 들어올 때마다 실행됩니다.
728x90
반응형
'etc. > IT 용어 사전' 카테고리의 다른 글
JVM, JRE, JDK란? (0) | 2022.04.10 |
---|---|
애플릿, 서블릿, JSP란? (웹에서의 자바 기술) (0) | 2022.04.10 |
Kubernetes란? (0) | 2021.09.09 |
AWS란? (0) | 2021.08.30 |
우분투(Ubuntu)란? (0) | 2021.08.30 |