운영 서버에 반영 전에 개발 서버에서 테스트한 내용 정리.
톰캣 경로\webapps\ROOT.war 그대로 두고 ROOT 폴더의 .java 파일만 변경하여
view controller에 System.out.println("test"); 찍어 봄.
-> 저장해도 자동으로 재기동하지 않아서 껐다 켜 봄.
->그래도 반영 안 됨(test 문구 안 찍혀 나옴).
.war에서 읽나 싶어서 .war 삭제하여 ROOT 폴더만 남긴 후 재실행
-> 그래도 반영 안 됨
한편 소스 비교 프로그램으로 프로젝트의 target의 .class와 war export해서 생긴 .class가 서로 동일함 확인(bin 폴더에 있는 .class와는 다름)
프로젝트 소스 수정 후 target의 .class 덮어 써 봄(이클립스에서 수정 및 저장하자마자 target의 .java, .class 바뀐다. 오히려 bin이 안 바뀜).
.class 덮어써도 자동 재기동은 안 돼서 수동 재기동
->반영됨(System.out.println("test");가 찍혀 나옴).
=>톰캣은 .class 파일을 읽지 .java 파일을 읽지 않음.
ROOT.war의 .class를 바꾸면 어떻게 되나
->war의 .class만 바꿔도 이미 압축 풀린 ROOT 폴더가 있다면 ROOT 폴더의 .class 파일을 읽는다.
=>최종 결론: 톰캣은 압축 풀린 프로젝트의 .class 파일을 읽는다.