본문 바로가기

개발관련/코드로 배우는 스프링 웹 프로젝트(개정판)

Part1 - 스프링 개발 환경 구축 Chapter01

코드로 배우는 스프링 웹 프로잭트 Part1

Chapter01 개발을 위한 준비

 

part 1 에서는 다음과 같은 설정을 처리합니다.

  • JDK 1.8 버전 설치
  • STS3(Eclipse) 설치 및 프로잭트 생성
  • Tomcat 설치 및 연동
  • 오라클 데이터베이스 / SQL Developer(Oracle 툴) 설치 및 설정
  • 스프링 프로젝트 생성 및 라이브러리 추가
  • Mybatis / mybatis-spring 설정
  • 스프링 MVC 개발 설정

 

1.1 개발 환경 설정

1.1.1 JDK 설치

책에서 JDK 설치 URL을 제공해주었으나, URL이 바뀔수도 있으므로 구글에서 검색해서 설치 하는 방법으로 진행 하였습니다.

그리고 최신 버전인 STS3실행이 JDK 11로 가능해서 JDK는 11로 진행 하도록 하겠습니다.

 

1) Google에 JDK 11 download 검색

2) 원하는 JDK 다운로드(https://www.oracle.com/kr/java/technologies/javase/jdk11-archive-downloads.html)

   - 책에서 64bit용 JDK 설치 하였다. (원하는 JDK 버전을 설치 해주면 됩니다.)

3) 설치 확인

 - 환경변수를 설정 해야 할 경우도 있지만, exe로 설치 했을 경우에는 환경 변수까지 잘 잡히기 때문에 설치가 잘 되었는지 확인만 하면 됩니다.

 - CMD 창을 열어 javac , java -version 명령어를 수행하여 결과값이 잘 나오는지 확인해주세요.

   * CMD창 여는 방법 : Windos키 + R 실행창이 열리면 cmd라고 넣은 후 Enter

실행창

javac 명령어 수행

 

java 버전확인

 

1.1.2 Eclipse 혹은 STS 설치

개발 환경을 구성하는 방법은 아래 2가지 방법이 있습니다.

이번에는 STS를 설치하는 방식으로 진행 하도록 하겠습니다.

  • Eclipse에 Sping을 설치하여 사용하는 방법
  • STS(Spring Tools Suite)를 설치하여 바로 사용하는 방법
  • STS4 버전은 책에서 설명하는 Spring legacy project를 생성할 수 없기 때문에 STS3버전으로 진행 하겠습니다.

1.1.2.1 Google에 STS3으로 검색하고 들어가면 STS3을 다운받을 수 있습니다.

1.1.2.2 파일 압축해제

   - 다운받은 spring-tool-suite-3.9.18.RELEASE-e4.21.0-win32-x86_64.zip 파일을 압축 해제 해 줍니다.

 

1.1.3 Eclipse 실행 환경 편집

설치된 Eclipse를 별다른 설정 없이 사용하는 것도 가능 하지만 이클립스가 기본적으로 JDK가 아닌 JRE를 이용해 실행 되기 때문에 추후에 Lombok 라이브러리 등 의 사용에 지장이 있을 수 있습니다.

 

1.1.3.1 STS실행 파일 설정

  • spring-tool-suite-3.9.18.RELEASE-e4.21.0-win32-x86_64\sts-bundle\sts-3.9.18.RELEASE\STS.ini 열기

  • 파일 내용 중 -vm 아래 부분을 우리가 앞서 다운받은 JDK로 변경해줍니다.
  • 없다면 추가 해줍니다.

자신이 설치 한 JAVA 경로에 맞게 해당 구문을 추가 해줍니다.

-vm
C:\Program Files\Java\jdk-11.0.16.1\bin\javaw.exe

 

  • STS 실행

STS 실행 아이콘

  • Workspace 설정 하라고 나오는데 저는 STS 설치 폴더 내에 위치 하게 해주었습니다.

     * workspace : 소스파일을 저장하는 폴더입니다. PC내 아무곳에나 위치 해도 상관 없습니다.

 

  • STS 실행 확인

이렇게 STS 실행 및 JDK 설정까지 완료 하였습니다.

 

1.1.4 workspace의 UTF-8 설정

STS는 운영체제에 따라서 기본 문자열 인코딩 방식을 다르게 지원합니다.

최근에 개발하는 경향을 보면 주로 "UTF-8" 인코딩을 이용하는데 운영체제가 Windows 인 경우에는 "MS949"방식이 기본으로 설정 되어 있어 JSP 개발이나 JAVA 코드를 작성할 때 어려움을 겪을수 있습니다.

  • Windows > Preferences > General > Workspace 에서 변경이 가능 합니다.
  •  

 

 

1.1.7 Tomcat 서버 설정

STS로 생성하는 프로잭트의 구동은 Tomcat을 이용해서 진행 합니다.

책에서는 9버전을 설치 했는데 저는 10.1 버전으로 진행 하겠습니다.

 

 

Apache Tomcat® - Apache Tomcat 11 Software Downloads

Welcome to the Apache Tomcat® 11.x software download page. This page provides download links for obtaining the latest version of Tomcat 11.0.x software, as well as links to the archives of older releases. Unsure which version you need? Specification versi

tomcat.apache.org

  • 다운받은 파일을 원하는곳에 압축 해제 해 줍니다.
  • 저는 STS 파일과 동일한 곳에 위치 해주었습니다.

  • STS(Eclise) 설정
  • Windows > Preperences > Server > Runtime Environments에서 Tomcat 설치 경로 지정

 

 

1.2 스프링 프로젝트 생성

1.2.1 ex00 프로젝트 생성

  • Spring Legacy Project 메뉴를 선택 해서 프로잭트를 생성 할 수 있습니다.

 

  • 프로잭트 이름 : ex00
  • Spring MVC Project도 체크 해줍니다.

 

  • 패키지명은 org.zerock.controller로 지정 하겠습니다.
  • Finish 버튼을 클릭하면 프로잭트가 생성 됩니다.

  • 처음엔 오류가 난것처럼 빨간색 X  표시가 떠있습니다.

 

  • src\main\WEB-INF\views\home.jsp 내의 아래 빨간 부분을 지우고 저장 -> 다시 넣고 저장 하면 빨간색 X 표시가 없어집니다.

 

 

1.2.2 스프링 버전 환경

생성된 프로잭트는 다음과 같은 구조로 Java 폴더나 JSP폴더, 테스트 폴더 등이 생성 됩니다.

Spring 프로잭트의 구조

Spring Legacy Project 메뉴를 이용해서 생성하는 프로젝트는 편리하기는 하지만 아쉽게도 생성되는 스프링의 버전은 3.x 이고, JDK환경 역시 1.6을 기준으로 작성되어 있습니다.

 

예제는 스프링 5버전을 이용할 것이므로 이에 대한 수정이 필요합니다.

생성된 프로젝트의 라이브러리는 pom.xml 파일을 통해서 관리되므로 이를 수정합니다.

 

스프링과 관련된 버전은 maven spring 으로 검색해서 maven Repository의 스프링 링크를 찾아서 사용합니다.

 

pom.xml에서 스프링 프레임워크 버전은 3.1.1로 생성 되므로, 예제는 5.0.7 버전으로 수정 합니다.

 

스프링 프레임워크의 버전을 수정하고 나면 관련 라이브러리를 추가 하는데 시간이 좀 걸립니다.

완료 된 후에는 Maven Dependencies 항목을 통해 스플이 프레임워크 라이브러리들이 제대로 변경 되었는지 확인 합니다.

 

 

1.2.3 Java version 변경

생성된 프로젝트의 JRE System Libarary는 1.6으로 되어 있습니다.

스프링 5.x 버전을 사용 하고 싶다면 JDK 1.8을 사용 하는것이 가장 좋습니다.

(저는 앞서 설치한 JDK 11로 사용 하도록 하겠습니다.)

maven-compiler-plugin 버전도 책과같이 3.5.1로 수정 했습니다.

 

 

이후 프로젝트를 선택한 상태에서 Maven > Update Project를 실행합니다.

실행된 이후에는 프로젝트의 컴파일이나 실행 환경이 JDK 1.11을 기준으로 설정된 것을 확인할 수 있습니다.

 

 

1.3 Tomcat을 이용한 프로젝트 실행 확인

작성된 프로젝트가 정상적으로 동작하는지 프로젝트를 실행해서 확인하는 과정은 프로젝트의 Run As > Run on Server를 이용해서 처리합니다.

구동 서버가 지정 되어 있지 않아 서버를 추가해줍니다.

 

정상적으로 실행 되지 않고, 에러메세지와 함께 이상한 창이 떳습니다.

 

Tomcat 10은 의 모든 패키지의 이름을 javax.servlet에서 Jakarta EE 9 의 일부인 jakarta.servlet로 이름을 바꿨는데

스프링부트나 스프링 프레임워크에선 지금 자카르타 EE 9를 지원하지 않는다고 합니다.

 

Tomcat9로 다시 실행 해주도록 하겠습니다.

 

  • 프로젝틀 우클릭 > Run As > Run on Server

  • 톰켓 9버전을 선택합니다.
  • Download and Install버튼을 이용해 바로 다운을 받아주도록 하겠습니다.

  • Tomcat 9를 선택 하고 시작 버튼을 클릭 합니다.

  • 정상적으로 페이지가 뜨는걸 확인 할 수 있습니다.

 

1.3.1 프로젝트 실행 시 흔히 발생하는 문제들

프로젝스 생성과 관련해서 여러 종류의 문제가 발생할 수 있습니다.

프로젝트 발생 시에 생기는 문제를 보려면 Problems 화면을 통해서 어떤 문제들이 발생하는지 확인 할 수 있습니다.

 

1) pom.xml에서 빨간색 경고등이 발생하는 경우

    해당 라이브러리를 다운로드 하지 못하면서 생기는 문제인 경우가 많습니다.

    Maven으로 여러 라이브러리들을 받으려고 할 때 가끔 비정상적으로 다운로드가 되는 경우가 발생할 수 있습니다.

    Maven이 다운로드 되는 파일들은 사용자 폴더 이름 내 .m2 폴더입니다.

    해당 폴더를 삭제 하고 Maven > update Project를 이용해 다시 다운로드 합니다.

1.4 Lombok 라이브러리 슬치

이클립스와 스프링 플로거인 만으로도 스프링 개발은 가능하지만, Lombok을 이용하면 Java 개발 시 자주 사용하는 Getter/Setter , toString(), 생성자 등을 자동으로 생성해 주므로 약간의 코드만으로도 필요한 클래스를 설계할 때 유용합니다.

Lombok은 다른 jar 파일과 다르게 프로젝트의 코드에서만 사용되는 것이 아니라 Eclipse 에디터 내에서도 사용 되어야 하기 때문에 별도로 설치 해 사용 합니다.

 

  • 다운로드한 Lombok.jar 파일을 더블클릭하여 실행 합니다.
  • IDE경로를 지정해 준 후 Install/Update 버튼을 클릭 합니다.

  • 이클립스 경로에 lombok.jar가 추가된 것을 확인 할 수 있습니다.