서버 개발을 하면서 다들 Spring 쓰니까 나도 쓴거지 정확히 이게 뭘 지원하는지 잘 몰라서 정리를 해본다.
Spring 이란?
Java 기반의 웹 프레임워크다.
- FrameWork : 웹 개발을 수월하게 할수 있게 제공하는 소프트웨어 개발환경
Spring Framework | Spring Boot |
톰캣 설치하고 안에 프로젝트 넣어줌 | 내장 톰캣 서버 사용 |
dependency 각각 호환버전 맞춰야함 | starter를 통한 dependency 자동화 |
- Spring Boot 3.0 버전의 등장 : Java 17이상을 지원
- 그랄 VM 기반으로 스프링 네이티브 공식 지원
- AOT 컴파일러 : 코드 최적화, 컴파일후 네이티브 코드로 제공, 네이티브 이미지로 컴파일이 가능 -> Java가 Binary 파일을 만들수 있다! -> 속도 향상!!
- Java build tool
- gradle : groovy 기반 (가독성 굿, 코드 간결)
- maven : xml 기반
스프링 프로젝트 실행시키기
나뿐만 아니라 많은 사람들이(?) ㅎㅎ 사실 나만 그런건진 잘 모르겠지만 거의 IDLE을 사용해서 개발을 할것이고, 코딩한걸 실행시킬때 실행버튼을 누를것이다.
개발자 답게(?) cli 명령어로 실행하는 방법을 정리해본다.
인텔리제이를 기준으로 프로젝트 Root 디렉토리에서 다음과 같은 명령어를 입력한다.
./gradlew build
> build 폴더가 생기고, 하위 디렉토리에 libs 디렉토리, jar파일 하나로 패키징 되어있는것을 확인할수 있다.
jar 파일이 있는 위치로 옮겨 간후 다음 명령어를 입력한다.
java -jar [생성된 jar 파일]
> 잘 실행된 모습
- build 안하고 바로 실행시키고 싶다면?
./gradlew bootrun
바로 실행시킬수 있다.
** control + c 로 종료하는게 아니라면 백그라운드에서 계속 돌아갈수 있으니 유의해야한다!
build(패키징 후 실행) - 배포할때 사용! | bootrun |
build된 snapshot반영 실행 실시간 반영 X |
코드 실시간 반영 실행 |
배포환경 설정
설정파일은 -(하이픈) 뒤의 단어만 인식한다.
- 로컬 테스트 환경 : 8080 포트
- 배포 환경 : 7777 포트
> 적용할 설정파일 설정
아예 기초를 다시 한번 짚고 가게된 시간이 되었고, 난 아직 갈길이 멀구나... ㅎㅇㅌ!!!