본문 바로가기

카테고리 없음

서블릿/JSP - 톰캣 설치하기

tomcat 9 버전 설치 후 압축 풀어서 lib파일 -> startup.bat 파일 실행

localhost:8080 입력했을 때 아파치 톰캣 화면이 나오면 제대로 실행된 것.

기본설정으로 나오는 문서 -> webapps->root폴더의 index.jsp 폴더

root 폴더에 nana.txt 파일 추가 후 url에 /nana.txt 추가로 적어주면 nana.txt 파일을 웹브라우저로 불러옴.

 

*Context 사이트 추가하기

물리적으론 2개의 사이트지만 root의 문맥에서 academy의 하위 경로에서 실행되는 것처럼 할 수 있음.

톰캣 설치 폴더로 들어가서 > webapps > Root > it >  news.txt 파일 작성.

url: localhost:8080/it/news.txt 에 접속하면 news.txt를 웹에 띄울 수 있음.

*주소체계를 root 위로 올리지만, 마치 기존 주소체계처럼 root의 하위폴더로 보이도록 하려면?

우선은 톰캣설치폴더 > webapps > itWeb > news.txt로 주소체계를 변경.

 

톰캣 설치 폴더 > config > server.xml에 들어가서 (망가질 수 있으니까 복사본 하나 만들어놓기)

<Context  path="it" docBase="(실제 경로 주소 복사)" previlieged="true" />를 추가.

실제는 it폴더가 없지만, 가상경로를 설정해줬기 때문에 "localhost:8080/it/news.txt"에 접속하면 news.txt 내용이 나옴.

 

*Servlet 프로그램 만들어보기

->Nana Servlet

클래스명은 마음대로 설정.

우리가 만드는 모든 서블릿 클래스는 WAS(파란색 박스)에 의해서 로드가 됨.

그래서 약속되어있는 추상클래스 자료형식으로 WAS가 servlet을 참조.

HttpServlet을 상속받은 추상 클래스 Nana를 생성한다.

public void main이 아니라, 이제 public void service()로 함수 코드를 작성한다.

 

*메모장에 옮겨서 작성 후 컴파일까지 하는 과정

C드라이브에 jsp 폴더 만들어서 메모장을 이용해 Nana.java 파일 작성

Nana.java

커맨트 창에서 java 파일을 작성한 폴더로 이동해 해당 자바파일을 컴파일해서 클래스 파일을 만듦.

*web-inf 폴더 내 파일들은 사용자에 의해 요청될 수 있는 디렉토리가 아님. 서버쪽에서만 사용할 수 있음.

 

사용자는 브라우저에 hello라는 url을 가지고 요청하고, 해당 요청에 해당하는 Nana 클래스를 찾아서 결과를 실해해줌.

매칭해서 호출해준다.

Nana.class파일을 복사해서, 톰캣설치파일 >  webapps > ROOT > WEB_INF > classes(생성) 폴더 안에 붙여넣기한다.

직접 요청할 수는 없음. web.xml파일 열어서  맵핑 정보를 추가한 후 요청해야함.

*클래스 위에 패키지명이 있다면 패키지 명도 써줘야 함!

web.xml에 맵핑 정보 추가

tomcat 실행 종료 후 다시 실행해서,

서버쪽 console을 열어보면 hello Servlet이 출력되어있음.