콘텐츠
Spring Framework
Spring 한글 발음으로 스프링은 웹 개발자 라면 반드시 듣고 겪게 되는 자바 기반의 프레임워크다.
내가 약 10년 전 처음 학원에서 웹 개발을 배울 당시에도 스프링 방식의 웹을 개발하는 것을 목적으로 수업이 진행 되었다.
오래되었다면 오래된 기술 임에도 아직도 많은 사이트가 스프링 기반으로 제작되며 이미 만들어진 사이트들도 마찬가지.
최신 웹 개발 기술이 등장 함에도 안정성과 성능이 탁월한 스프링 방식의 웹 개발이 선호되고 있다.
나는 신입사원 당시 여러 교육을 받을 때를 제외하면 대부분 업체가 제공하는 솔루션을 운영 하거나 완성된 웹 프로젝트를 받았다 보니 아직도 Spring 에 대한 제대로 된 개념이 잡히지 않았다.
그러던 중 새로운 웹을 개발해야 되는 상황이 왔는데 그럴 때 마다 가볍게 Node.js 를 활용해서 개발을 하였다.
이번에는 이 스프링을 활용해 개발을 하기로 마음을 먹고 그 시작을 위해 IDE 를 설치해 보고자 했다.
Spring Tool Suite
Spring 을 시작하면 Spring Framework, Spring Boot 등의 비슷하지만 다른 용어를 여러 듣게 될 텐데 그 중 STS 는 이클립스 기반의 IDE(통합 개발 환경) 이다.
설치해 보면 이클립스와 거의 흡사한 소프트웨어가 실행 되는데, Spring 웹을 구현 하는데 있어 특화되어 있다.
Spring Boot 는 Spring 기반 웹을 개발 하기 위해 지원되는 프레임워크를 의미 하는데 이런 Spring Boot 를 포함한 여러 Spring 개발 관련 도구, 라이브러리 등이 전부 통합되어 있는 것이 STS 다.
여기서 헷갈릴 수가 있는 것이, 내가 학원에 다녔을 땐 일반 이클립스에 Spring 플러그인을 설치하여 개발을 했었다. STS 는 별도로 다운로드 해서 설치하면 관련 도구, 플러그인이 이미 포함 된 상태로 설치가 된다. 그래서 이클립스를 기반으로 한 Spring 용 IDE 가 STS 고 단순히 이클립스에 Spring 관련 플러그인을 설치한 것과 다소 차이점이 존재한다.
STS 는 구글 검색 시 바로 공식 홈페이지에서 다운로드 및 설치가 가능하며 링크는 다음과 같다.
홈페이지에 접속해 보니 내가 알던 것은 이클립스 기반 STS 만을 알고 있었는데 VSCode 와 Theia 와 같은 다른 소프트웨어 기반의 STS 도 존재 한다. 기본적으로 대부분은 이클립스 기반의 STS 를 사용하는데 그 이유로는 자바 기반의 웹 애플리케이션을 개발 하기엔 STS가 유리하기 때문이다.
VSCode 는 강력한 확장 플러그인을 이용해 자바 개발이 가능하지만 이클립스는 애초에 자바 개발에 특화 되다.
처음 Spring 개발을 시작 한다면 커뮤니티에도 정보가 많은 이클립스 기반의 STS 를 설치하면 좋고 나 또한 이를 선택 했다.
Spring Tool Suite vs Eclipse 사용 차이
학원과 내가 참고하는 내용에 따라 Spring 개발 시 STS 를 사용하거나 이클립스를 사용하고 이에 Spring 개발 도구(플러그인) 등을 추가해 사용하는 경우가 있다. 이는 각 장점이 있는데 STS 는 위의 언급 대로 Spring 에 대한 모든 개발 환경을 제공하고 특화 되어 있다.
그래서 STS 가 유도하는 방식으로 개발하고 설정을 해주면 자연스럽게 Spring Web 을 개발할 수 있다. 단, 이를 위한 사용법을 별도로 배우고 익혀야 하므로 처음 자바를 배워 가볍게 웹 페이지를 만들어 보고자 할 때에 비해 다소 복잡하고 어려워 보일 수 있다.
결론 적으로 Spring 을 개발 하려고 할 땐 이클립스에 직접 Spring 관련 설정을 하는 과정을 겪기 보다 처음부터 STS 를 설치하고 사용법을 익히는 것이 유리하다.
이에 대한 자세한 내용은 별도로 다루면 좋을 것 같다.
Spring Tool Suite 4 다운로드 및 설치
위의 URL 에 접속하여 내 PC 환경에 맞춰 STS4 WINDOWS X86_64를 다운로드 하였다.
다운로드를 하게 되면 일반적인 설치 파일(예: exe 확장자) 가 아닌 jar 파일이 다운로드 되는데 이를 반디집 등 압축 해제 프로그램을 이용하여 풀어 주면 다음과 같은 구성을 지니고 있다. 그럼 그 안에 contents.zip 안에 sts-4.22.0.RELEASE 폴더가 있고 이를 자신이 원하는 경로에 압축 해제 하면 된다.
그리고 sts-4.22.0.RELEASE 안에 SpringToolSuite4.exe 를 실행했을 때 정상적으로 실행 되면 설치가 완료된 것이다.
Spring Tool Suite 4 실행
Spring Tool Suite 를 실행 하면 일반적인 이클립스 첫 실행과 별반 다르지 않게 workspace 설정 팝업 창이 출력 된다.
차이점 이라면 창 상단에 Spring Tool Suite 4 Launcher 가 표시 된다는 점.
Launch 를 누르면 이클립스와 매우 흡사한 소프트웨어가 실행이 된다. 나는 처음 실행하니 Windows Defender Exclusion Check 이란 메시지가 표시 되었다. 메시지 원문과 내용은 다음과 같다.
- 메시지 원문:
Microsoft’s Windows Defender is active and colud significantly decrease the startup and overall performance of Spring Tool Suite 4. Select how this installation should be handled by Windows Defender. - 메시지 해석:
Microsoft의 Windows Defender가 활성화되어 있으며 Spring Tool Suite 4의 시작 시간과 전반적인 성능을 크게 저하 시킬 수 있습니다. Windows Defender가 이 설치를 어떻게 처리해야 하는지 선택하십시오.
이에 대한 선택지는 다음과 같다.
- 선택지 원문:
Exclude Spring Tool Suite 4 from being scanned to improve performance. (In general adding exclusutions may effect the security level of this computer)
Keep Spring Tool Suite 4 being scanned by Windows Defender. - 선택지 해석:
성능을 향상시키기 위해 Spring Tool Suite 4를 스캔 대상에서 제외합니다. (일반적으로 제외 항목을 추가하면 이 컴퓨터의 보안 수준에 영향을 미칠 수 있습니다)
Spring Tool Suite 4가 Windows Defender에 의해 계속해서 스캔되도록 유지합니다.
개발 중 혹시 모를 문제를 방지하기 위해 나는 스캔 대상에서 제외하는 설정을 선택했다. 옵션 선택 후 Proceed 를 눌러 보니 PowerShell 관련 실행 팝업 창 이 출력 되고 이클립스와 거의 흡사한 모습의 STS 가 보여 개발할 준비가 완료 된다.
다음 포스팅 에선 STS 에서 프로젝트를 생성해 웹 개발을 시작해 봐야겠다.