- 모든 Class의 최상위 Class(모든 클래스는 Object Class를 상속받는다.)
- java.lang.Object
- java.lang package 안의 Object Class
- Location : C:\Program Files\Java\jdk-17(jdk는 설치한 버전에 따라 상이하다.)\lib\src.zip\java.base\java\lang\Object.Class
- java.lang package는 import 구문으로 명시하지 않아도 자동으로 컴파일된다.
- Object Class는 오버라이딩, 오버로딩을 지원한다.
- java 8 Object Class Document (https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html)
웹 브라우저(Chrome, Edge등)를 사용하여 사용자에게 동적인 서비스를 제공하는 프로그램(응용 SW)을 의미한다.
- 주의점 : 웹 브라우저를 사용하기 때문에 클라이언트의 운영 체제의 종류나 버전에 상관 없이 작동되도록 표준 브라우저 기능을 사용해야 한다.
- Presentation(Web Server)
- Client와 Application간에 상호작용하는 계층(사용자 인터페이스라고도 함.)
- 화면에 Data를 표시하고, Client로 부터 다양한 입력 값을 받는다.
- 주로 HTML, CSS, JavaScript등을 사용하여 개발된다.
- Application(Application Server)
- Presentation 계층에서 수집된 입력 값이 처리된다.
- 비즈니스 로직을 수행한다.
- 주로 Python, Java, PHP등을 사용하여 개발된다.
- Data(Database Server)
- Application 계층에서 처리된 데이터들이 저장된다.
- RDBMS, NoSQL 등이 존재한다.
- WEB-INF : 외부에서 접근할 수 없으며, Web Application에 대한 정보들이 저장되는 디렉토리
- classes : Servlet과 다른 일반 Class 파일들이 위치한 디렉토리
- lib : 다양한 library들이 위치한 디렉토리
- web.xml : 환경 설정 파일
- Server에서 인식하는 하나의 Web Application
- Apache Tomcat의 경우, server.xml에 등록한 Web Application을 의미한다.
- Web Application에 하나의 Context가 등록된다.
- 항상 Web Application의 이름과 일치하는 것은 아니다.
- Context의 이름은 중복되면 안되며, 명사형으로 명명해야 한다.
- Web Server의 일종으로서, Java Servlet(JSP) Container이다.
- Java 코드가 실행될 HTTP Web Server 환경을 제공한다.
- Single OS Process에서 실행된다.
- 실행되는 Single OS Process는 JVM을 실행하고, 브라우저에서 Tomcat으로 보내는 모든 단일 HTTP Request는 별도의 Thread로 처리된다.