1. 이클립스 설치
https://www.eclipse.org/downloads/
이클립스 홈페이지에서 이클립스를 다운로드한다.
아래 보이는 다운로드 버튼을 눌러 다운받는 이클립스는 최신버전 IDE이며, 버튼 아래 Download Packages를 눌러 다른 버전의 이클립스를 받을 수도 있다.
다운로드된 exe 파일을 실행하면 아래와 같은 installer 창이 뜨며, 해당 창에서 원하는 이클립스 버전을 고를 수도 있다.
Spring을 사용할 예정이니 Eclipse IDE for Enterprise Java and Web Developers 를 다운받는다.
다운로드가 끝나면 Launch Eclipse를 선택하거나, 지정한 폴더 경로에서 이클립스를 실행한다.
이클립스 실행시 뜨는 로딩. (버전마다 로딩화면이 다르다.)
로딩이 끝나면 workspace를 고르는 창이 뜬다.
처음 생성하는거니 Browse 버튼을 눌러 원하는 workspace 경로를 설정한다.
워크스페이스 경로 설정이 끝나면 Launch 버튼을 누른다.
참고로 이클립스를 실행할 때마다 workspace를 고르는 Launcher 창이 뜨는데,
매번 보고싶지 않다면 Use this as the default and do not ask again을 체크해도 된다.
워크스페이스는 해당 창이 안나온다고 해서 못바꾸는게 아니니, 부담없이 체크해도 된다.
(워크스페이스는 File - Switch Workspace로 바꿀수 있다.)
2. STS(Spring Tool Suite) 설치
Help - Eclipse Marketplace를 눌러 마켓플레이스 창을 띄운다.
sts 검색해 Spring Tools 3 Add-On for Spring Tools 4 3.9.17.RELEASE를 Install한다. (3.9.17 숫자가 다를 수 있다.)
라이센스에 대한 동의를 하고 Finish를 누르면, 하단 우측에 설치를 진행하는 바가 보인다.
설치가 완료되면 Restart 하겠냐는 알림창이 뜨고, 재시작을 하면 sts 설치까지 완료된 것이다.
3. Spring 프로젝트 만들기
Ctrl + n 을 눌러 새로운 프로젝트 창을 띄운다.
spring을 검색하여 Spring Legacy Project를 선택한다.
프로젝트명을 입력하고, templact은 Spring MVC Project를 선택한다.
패키지명까지 입력하면 프로젝트 생성이 끝난다.
보통 'com.회사명.기능명'의 방식으로 명명하지만, ( ex> com.company.controller )
com이 아닌 kr.or 같은 다른 방식을 사용하기도 한다.
4. 세부 설정 하기
Window - Preferences에서 설정
# jsp 인코딩 설정 (UTF-8)
jsp 파일 생성시 기본 설정상 EUC-KR 로 생성되는데, UTF-8로 바꾸고 싶을때.
Web - JSP Files의 Encoding을 ISO 10646/Unicode(UTF-8)로 변경.
# 워크스페이스 인코딩 설정 (UTF-8)
General - Workspace의 Text file encoding Other 체크하고, UTF-8로 변경
#실행시 크롬으로 열기
General - Web Browser의 Use external web browser 체크, Chrome 체크
5. 아파치 톰캣 (Apache Tomcat) 서버 설정
jsp는 서버가 필요하기 때문에 서버 설치가 필요하다.
원하는 버전의 아파치 톰캣을 다운받는다.
컴퓨터 버전에 맞는 파일을 다운받아야 되는데,
예를 들어 Windows 10, 64bit 라면 64-bit Windows zip을 받는다. (32bit라면 32-bit Windows zip를 받으면 되겠다.)
원하는 경로에 압축을 풀고, 경로를 기억해둔다.
그리고 이클립스 하단의 Servers에 No servers are available. Click this link to create a new server...를 눌러 서버를 추가한다.
원하는 아파치 톰캣 버전을 고르고, Browse로 아파치 톰캣의 압축을 풀어놨던 경로를 설정한다.
이때 bin 폴더가 보이는, bin 폴더의 상위 경로까지 들어가 설정해야 아파치 톰캣을 인식한다.
프로젝트를 추가하고 Finish를 하면 서버가 생성된다.
서버 실행은 Ctrl + f11 - Run on Server이나, 프로젝트 우클릭 - Run As - Run on Server로 실행하면 된다.
실행 성공시 볼 수 있는 화면은 아래와 같다. (크롬 실행으로 설정 변경시 크롬창이 뜬다.)
직접 경로로 접근할 때는
원래 주소는 ip:port/프로젝트 생성시 정했던 패키지 마지막명/이 기본 설정이다.
이때 ip:port 뒤에 붙을 경로를 바꿀 수 있다.
server.xml 파일에서 수정하는 방법이 있고,
Server를 더블클릭해서 Modules에서 Path를 변경하는 방법이 있다.
주의! 하나의 서버로 여러 프로젝트를 돌릴 때는 Path가 겹치면 오류가 날 수 있으니 다르게 설정해야한다.
또한 간혹 다른 서버를 사용한 경우가 있어, 실행 시 이미 포트를 사용하고 있다는 오류가 날 수 있다.
서버를 더블클릭해 overview 설정에서 해당 포트를 더블클릭해 다른 숫자( ex> 8888 )로 바꾸고 저장(Ctrl+s)하면 실행이 잘 될 것이다.
+처음 프로젝트 생성 시 날 수 있는 에러
1. javax.servlet.http.HttpServlet 에러
기본으로 만들어진 home.jsp 파일을 보면 <%@ 태그 처음 부분에 오류가 나있는걸 볼 수 있다.
The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
프로젝트 우클릭 - Properties의 project Facets에서 Java - Runtimes - Apache Tomcat v9.0 (톰캣 버전은 설치된 버전) 체크하면 오류가 사라진다.
2. web.xml cvc-id.3 에러
기본으로 만들어진 web.xml 파일을 보면 오류가 나있는걸 볼 수 있다.
Description Resource Path Location Type cvc-id.3: A field of identity constraint 'web-app-servlet-name-uniqueness' matched element 'web-app', but this element does not have a simple type. web.xml /testSpringProject/src/main/webapp/WEB-INF line 19 Language Servers
web.xml에서 ~~~ xsi:schemaLocation="http://java.sun !~~ 부분에서
java 부분의 소문자 j를 대문자 J로 바꾸면 오류가 사라진다.
+한글 인코딩에 대한 부분
?로 나오는 부분이 한글이다.
이처럼 한글이 깨지는 경우, 여러가지 해결 방법이 있다.
1. jsp파일에 page 태그 추가 (post 방식)
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
2. web.xml에 필터 추가 (post 방식)
<!-- 한글 인코딩 필터 추가 -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
두 방식 중 하나만 사용해도 한글이 제대로 보인다.
두 방식을 사용해도 한글이 깨진다면 아래 URL를 참고하자.
+Spring 버전 바꾸기
pom.xml에서 원하는 버전으로 바꿔서 저장하면 된다. (버전 변경시 오류가 날 수도 있다.)
+살짝 정리해 본 구성에 대한 설명
+Spring 구성 정리 및 각종 설정 코드 정리
'Java > 정리' 카테고리의 다른 글
Oracle DB 계정 생성 (0) | 2021.08.12 |
---|---|
Spring 구성 정리 및 각종 설정 코드 정리 (0) | 2021.08.06 |
컴파일과 빌드 (0) | 2021.06.29 |