본문 바로가기

프로그래밍/Java

Spring VS Spring Boot 의 배포차이

반응형

Spring VS SpringBoot 배포의 차이

날짜: 2021년 7월 3일

학습목표

SpringBoot는 SpringMVC와는 달리, war파일이 아닌 jar파일로 빌드,배포할수 있다.

솔루션 포팅때문에 Spring프로젝트를 war파일로 빌드후 배포를 할줄 알아야하는 상황이 와서 따로 조사한적이 있었다. 참 간단하게도, 기본적인 웹애플리케이션의 디렉토리 구조만 지키면 WAS(톰캣이나 제우스등..)서버 실행시, 자동으로 실행해준다는것을 알았다. 여기서 궁금한것이, SpringBoot는 war파일이 아니라, jar파일로 배포되는데, 서버가 어떻게 jar파일을 인식하고 실행할까?.. 가 궁금해졌다.

  • Jar파일은 서버에서 어떻게 구동되나??

Jar파일은 서버에서 어떻게 인식할까?

SpringBoot는 기존의 SpringMVC와 달리, WAS가 내장되어있다. (기본설정 = 톰캣) 즉, SpringBoot는 애초에 서버에 올라갈때, Java만 설치되어있으면 된다.

......

SpringMVC의 경우 war파일로 빌드 후, 서버컴퓨터의 WAS가 관리하는 디렉토리인 webapps 폴더에 파일을 올려두어야 했으나, 애초에 SpringBoot는 WAS가 내장되어 있으므로 Java가 설치된 서버라면 "/catalina.sh start" 등의 명령어가 아니라, java -jar XXXX 명령어를 실행하면 웹 애플리케이션이 구동된다.

Feedback

진짜 스스로가 멍청하다는것을 매일매일 깨닫는다. 낫놓고 기억자 모른다는 말은 왜 항상 나에게 해당되는 걸까.... 분명 SpringBoot가 WAS가 내장되어 있다는 것을 알고는 있었는데.... 정말 들어만 본 수준으로 알고있던 것이다... WAS가 내장된다는게 어떤의미를 가지는지 전혀 이해하지 못했고, 이해할 생각조차 하지 못했다...

알게된 점

  • SpringBoot 웹애플리케이션은 java -jar XXXX 로 구동이 가능하다 ^.^,,,

알아야할 점

  • -

References

스프링부트 프로젝트 AWS EC2에 배포하기 03 (드림 리멤버) (항해99)

반응형

'프로그래밍 > Java' 카테고리의 다른 글

정적 언어와 동적언어 그리고 덕 타이핑  (0) 2021.07.22
서블릿  (1) 2021.07.12
Non-Blocking,Blocking VS Async,Sync  (0) 2021.06.19
네트워크 통신(2)  (0) 2021.06.15
네트워크 통신(1)  (0) 2021.06.15