c/s 프로그래밍의 일부분이다.
http://www.naver.com:80/index.html
web의 기본 port는 80이며 처음 페이지 이름은 index.html이지만 생략해도 상관 없다.
Servlet Container
WebServer에서 Servlet Bean을 관리해주는 역할은 한다.
Jsp Container
view를 지원하기 위한 기술인 Jsp Bean을 관리하는 Jsp Container이다.
폴더 구조
Java는 Web 개발의 표준화를 위해 Sevrvlet Bean을 제공해 줄뿐 아니라 표준화된 폴더 구조 역시 규격화 해놓았다.
또한 WEB-INF 밑의 web.xml 파일을 통해 http://127.0.0.7:8080/example/WEB-INF/classes/first.class 처럼 경로를 끝까지 적지않고
http://127.0.0.1:8080/examples/FirstServlet 까지 적어도 실행 가능하게 해준다.
127.0.0.1까지는 해당 ip 기기에 접속하며 8080을통해 tomcat webserver에 접근한다
spec
Java WAS들은 기본적으로 Servlet Container 안의 Servlet Bean들을 사용한다. 따라서 java 개발자들은 WAS 종류마다 사용법을
알아야 하는것이 아닌 Servelt Spec에 해당하는 Servlet의 사용법만 알면 모든 WAS를 사용 가능하며 이러한 기술 또한 다형성이 적용된것이다.
classPath
Servlet 역시 java class이기에 WAS를 통해 개발을 하려면 WAS안의 Servlet에 대한 class path 설정이 필요하다.
tomcat도 Servlet Bean들을 실행시키기 위한 JRE의 위치를 알아햐 하는데 tomcat은 자동적으로 JAVA_HOME의 path를 찾아 JRE의 위치를 알아낸다.
Sub sub = (Sub)new Super(); //불가능
Super s1 = new Sub(); //DownCasting, 상위에는 없고 자신에게만 있는 메서드를 사용하고싶을때 사용
Sub s2 = (Sub)s1;