본문 바로가기

Spring Framework 개발 일지/Spring으로 게시판 만들기

FirstSpringBoard#1-1]프로젝트 생성

반응형

안녕하세요. 

오늘은 기본적인 프로젝트 생성부터 Maven 의존성 설정까지 다뤄보겠습니다.

JSP 파일에서 html 화면 렌더링(view), request/response 처리(controller), DB와의 연동(Model)까지 한꺼번에 처리하다가

Model2방식으로 어플리케이션을 3가지 기능으로 분리해서 프로젝트를 구성하고 의존성 관리를 메이븐으로 하게 되었을때

높아진 가독성과 유지보수성, 무엇보다 라이브러리 추가 방식 간결화로 엄청 신선한 느낌을 받았었어요.

특히 mysql-connector같은 경우에는 jar파일을 WEB-INF 폴더 밑의 lib 폴더에 넣는걸 항상 깜빡하고 뒤늦게 추가하고는 했죠.

하지만 Maven을 프로젝트에 도입한 생산성도 크지만 프로젝트 구성에 애를 먹는 경우도 꽤 많았어요.

이 프로젝트를 진행 하면서도 비즈니스 로직의 오류보다는 개발환경 설정으로 인해 생기는 문제로 더 큰 애를 먹었던거같아요.

그래서 프로젝트 생성은 꽤 중요합니다. 특히 우리같은 초보자들에게는 말이죠.


1. 우선 인코딩 설정부터 하겠습니다. 이클립스(STS)의 기본 인코딩 설정은 EUC-KR로 되어있습니다.

가장 보편적인 방식인 UTF-8로 바꿔주어야 github에 올리거나 다른 PC에서 실행할 때 한글이 깨지지 않아요.


window-preference로 들어갑니다.


2. General > workspace-text-file-encoding에서 UTF-8으로 바꿔줍니다.


3. General에서 Content Types Text에서 utf-8로 바꿔줍니다.


4. Web>Cssfile, HTML File, JSP File에서 utf-8로 설정해줍니다.


자 이제 Spring MVC 프로젝트를 생성해보겠습니다.

1. ctrl + N을 누르고 생기는 화면에서 Spring Legacy Project를 선택합니다.



2. Spring MVC Project를 선택하고 프로젝트 이름을 입력합니다.

Next 버튼 클릭해 줍니다.


4. 그룹명을 입력해줍니다.



5. 프로젝트가 생성되었으면 프로젝트를 선택하고 alt + enter를 선택해서 properties로 들어갑니다.

Project facets에서 java버전을 1.8로 바꿔주세요. 옆에 상자에서 Runtimes에서 서버 선택도 잊지 마시구요.

6. 프로젝트 폴더구성이에요.

패키지나 설정파일들은 그때그때 자세히 설명드리고 추가할거에요.

우선 아래 그림을 보고 간단히 알아두세요.

scr > main > webapp > WEB - INF 의 views와 spring 폴더는 과감히 삭제해주세요.


7. 부연 설명을 하자면 실제 폴더 구성은 아래와 같습니다. src 밑에 main과 test 폴더가 있어요.

main 폴더 밑에는 java, resources, webapp폴더가 있고요. 여러분도 확인해보세요.

프로젝트에서 오른쪽 마우스 클릭하고 show in - system explorer를 누르면 확인할 수 있어요.




8. spring4 폴더는 무엇인지 궁금해하실 거같은데. Maven project에서 target 폴더라고 보면 됩니다. 우리가 만든 프로젝트를 서버에서 구동하면 우리가 만든 프로젝트 구성이 그대로 올라가지 않아요. 이클립스에서 프로젝트를 재구성해서 올라가죠. 이 과정을 빌드라고 하는데요.

이 폴더에 우리가 작성한 파일들이 필드되어서 들어가요. 빌드 경로는 properties - build path- source에서 확인할 수 있어요.



프로젝트 구성은 여기서 마칠게요.

다음 포스팅에서 의존성 관리를 하겠습니다.




반응형