## 59. 서블릿 컨테이너 삽입하기
- 웹 애플리케이션에 서블릿 컨테이너를 포함시키는 방법
tomcat embed jasper 라이브러리 추가
=>
=>
=>
ㄴ [Copy to clipboard] 선택
=>
build.gradle
ㄴ build.gradle 스크립트 파일의 dependencies 에 붙여넣기
=>
ㄴ gradle 재설정
=>
ㄴ 프로젝트 Refresh 해주기
=>
ㄴ 라이브러리 추가됨을 확인
ㄴ report 패키지에 App.java 라는 클래스 생성하기
=>
https://kaminion.tistory.com/41
ㄴ 해당 블로그 참고
=>
ㄴ 해당 코드 복사
=>
App.java
ㄴ 복사한 코드 붙여넣기
=>
Command + Shift + O 실행
=>
ㄴ java.io.File 를 import 해주기
=>
App.java
ㄴ 예외처리 해주기
=>
App.java
ㄴ 서버 시작을 확인하기 위한 출력문 추가
=>
App.java
ㄴ 톰캣 서버 구동시키는 객체 준비하기
ㄴ 서버의 포트 번호 설정하기
=>
App.java
ㄴ 톰캣 서버를 실행하는 동안 사용할 임시 폴더를 지정해주도록 함
=>
App.java
ㄴ 톰캣 서버의 연결 정보를 설정
ㄴ Tomcat 서버의 Connector 설정을 변경하여 URI(Uniform Resource Identifier) 인코딩을 UTF-8로 설정
ㄴ 웹 애플리케이션에서 URL에 사용되는 문자열을 올바르게 처리하기 위한 설정
=>
App.java
ㄴ 해당 코드 제거
=>
App.java
=>
App.java
ㄴ 해당 변수 제거하고 아래처럼 직접 넣어주도록 함
=>
App.java
=>
App.java
ㄴ 웹 애플리케이션을 루트 컨텍스트로 설정하기
=>
App.java
ㄴ 웹 애플리케이션의 기타 자원 등록하도록 함
ㄴ 해당 코드 주석 처리 해두기
=>
App.java
ㄴ 웹 애플리케이션을 환경 정보에 등록하도록 함
=>
App.java
ㄴ 톰캣 서버 구동하는 코드
=>
App.java
ㄴ 톰캣 서버를 구동한 후 종료될 때까지 JVM을 끝내지 말고 기다리도록 함
=>
App.java
ㄴ 서버 종료를 확인하기 위한 출력문 추가
ㄴ App.java 를 실행하기
=>
=>
=>
App.java
=>
=>
=>
App.java
=>
App.java
App.java
=>
App.java
=>
=>
App.java
ㄴ 서블릿 클래스는 bin/main 에 있으므로 코드 수정
=>
App.java
ㄴ additionWebInfClass 변수를 제거하고 직접 대입하기
=>
App.java
ㄴ 웹 애플리케이션 설정 정보를 웹 애플리케이션 환경 정보에 등록하도록 함
=>
ㄴ App.java 중지 후 다시 실행
=>
=>
=>
=>
=>
=>
=>
=>
=>
BoardAddServlet.java
ㄴ uploadDir 을 출력 해보기 위해 코드 추가
=>
App.java 재시작
=>
=>
=>
=>
=>
=>
=>
=>
=>
HomeServlet.java
ㄴ MyApp2 -> MyApp3 로 변경
=>
App.java 중지 후 재실행
=>
ㄴ 서버를 중지하고 다시 실행해야 변경됨
=>
App.java
=>
App.java
=>
HomeServlet.java
ㄴ MyApp3 -> MyApp4 로 변경 후 저장
=>
ㄴ 서버를 재시작하지 않아도 알아서 재실행됨
=>
ㄴ 브라우저만 새로고침 해주면 반영됨