기존 프로젝트를 가져와서 사용하지 않고 Setting 부터 시작하기로 한다
으로 JDK, IDE, Server는 기존 프로젝트를 사용할때 사용했던 버전을 그대로 사용한다.
기존에 DB에 대한 SQL은 최종으로 작성하여 정리한 것으로 사용하려고 하며 Mysql에 맞게 변경하고 문제점에 대해서 보완하며 사용할것이다.
내가 기존 프로젝트에서 맡은 부분은 고객센터, 관리자 게시글(공지사항, 이벤트), 판매관리 페이지를 맡았으나 우선적으로 웹 서비스에서 시작이 되는 회원가입과 로그인을 먼저 리팩토링 및 업그레이드 할 계획이다.
먼저 어제 회의에서 팀원이 말했던 프로젝트를 기능에 따라 분리하는 방법을 사용하나 고민을 하는 중이다... 우선 어떻게 하든 프로젝트 하나는 생성해야 하기 때문에 그런 부분은 프로젝트 세팅을 하고 나서 고민을 해보자..
프로젝트는 Spring Legacy Project를 사용하며 MVC디자인 구조를 사용할것이다.
STS 툴의 기본적인 설정은 [window] -> [Preferences] 에서 시작한다
[General] -> [Workspace] -> [Text File Encoding]을 "UTF-8"로 변경
[Web] -> [CSS Files] -> [Encoding]을 "UTF-8"로 변경
[Web] -> [HTML Files] -> [Encoding]을 "UTF-8!"로 변경
[Web] -> [JSP Files] -> [Encoding]을 "UTF-8"로 변경
[Java] -> [installed JREs] -> 기존에 존재하는 JRE의 버전이 맞다면 그냥 두고
틀리다면 틀린 JRE를 선택하고 [Remove] -> [Add]
[Standard VM 선택] -> [next]
그러면 JRE를 추가하는 창이 새로 팝업되고 -> [Directory] click후 JDK를 저장해둔 폴더를 선택하면 JRE를 가지고 온다
추가 되면 아래와 같은 화면이 나오며 -> [Finish]를 선택하면 추가 된다
그리고
[Java] -> [Compiler] -> [Conpiler compliance level]에 JRE의 버전인 11버전으로 되어 있는지 확인한다 - 되어 있다면 문제 없고 되어 있지 않다면 변경해줘야함
[Server] -> [Runtime Environment]에 현재 돌아가는 서버의 환경을 설정할수 있는데 아래의 화면을 보면 기존의 Server가 tomcat 9 버전으로 문제가 없는 것을 볼수 있다
문제가 있어 원하는 톰캣 9버전이 아닌 다른 서버가 있는 경우 9버전으로 변경해줄수 있어야 한다, 물론 STS를 처음 설치하고 보면 VM server인지 어떤 건지...톰캣 서버가 아닌 다른 스프링의 서버가 들어 있는 것을 볼수 있음...
바꾸는 방법은
[Remove]
[Add]
사용하고자 하는 서버가 있는 폴더를 선택해준다
이러고 기존의 서버의 경우는 Server탭에(perspactive)다른 서버가 있기에 지우고 변경을 해줘야한다
이로써 STS에 대한 기본 세팅은 되어 있고 추후 필요할때 마다 세팅값을 변경해줘도 좋다!..
[new] -> [Spring Legacy Project]
[프로젝트 명 설정] -> [Template를 Spring MVC Project로 설정] -> [next]
[Top Level Package 설정]
top Level Package는 최상위 패키지의 이름을 설정하는 것으로 원하는대로 작성해도 좋으나
작성하는 방법이 있어 그 방법에 맞지 않게 만들면 만들어지지 않는다.
필드 top Level Package에 대한 입력이 정규식 \w+.\w+(.\w+)+와 일치하지 않습니다.
라는 의미로 한글이 아닌 영어,underscore,숫자로 구성되는 이름으로 만들어줘야한다.
com.mycompany.myapp과 같은 이름을 구성하라고 예로서 작성되어 있다.
나는 com.myrefactoring.dong으로 Top level Package명을 작성했다.
생성된 프로젝트를 보면 JRE의 버전이 1.6으로 되어 있는 것을 볼수 있다.
이는 아직 프로젝트의 설정이 잡혀 있지 않다는 것을 의미한다.
그렇기에 설정을 변경해줘야한다.
[프로젝트 오른쪽 클릭] -> [Properties]
Project Facet에서 원하는 것을 넣어주는데 기존에 들어 있는 Dynamic Web Module과 Java의 버전을 변경해서 사용해줘야 한다.
Dynamic Web Module은 4.0을 선택한다.
Dynamic Web Module의 옆쪽으로 보면 Runtimes를 누르면 서버를 선택할수 있다.
서버는 아파치 톰캣 9.0v을 선택한다.
Java는 JDK의 버전에 맞는 11버전을 선택한다.
Web Project Settings는 Server에 프로젝트를 배포하여 사용할때 Context Root를 지정할수 있다.
이는 기존에 프로젝트를 2Depth로 설정했던 것 처럼 1st Depth의 이름으로 지정하는 것과 같은 기능을 할수도 있다고 한다.
[Java Build Path] -> [Libraries]
JRE System Library를 보면 JRE가 javaSE-1.6으로 되어 있기에 수정해줘야 한다
JRE System Library를 더블클릭하면 위와 같은 화면이 나오는데
Alternate JRE를 누르고 Installed JRE를 누르면 JRE를 찾아서 JRE를 프로젝트에 넣어줄수 있다
그전에 사용했기에 Alternate JRE를 누르면 자동으로 들어 오게 되긴하는데
Installed JREs를 눌러보면
아래와 같은 화면을 볼수 있고 [Add] -> [Standard VM]를 누르면 JRE를 찾아 넣어줄수 있다
여기서 [Directory]를 선택 JRE가 들어 있는 Java파일을 찾아 넣어주면 JRE를 넣어주게 된다
설정해서 넣어주면 JRE의 버전이 변경된것을 볼수 있다.
Compiler 또한 JDK의 버전에 맞게 설정해줘야 한다
지금은 처음에 설정되어 있는 1.6버전으로 되어 있는데 11 버전으로 변경해준다
Text File encoding이 UTF-8이 맞는지 확인한다
기존에 STS를 설치하고 설정을 한 이후에 설정하는 것이라서 기존에 어느정도 IDE에 설정이 되어 있어 설정하는게 적을 것이라고 생각한다
우선 이정도로 설정하고서 틀린 부분이 있다면 하면서 수정하자..!
프로젝트에서
src/test/~로 되어 있는 것을 볼수 있는데 이는 단위 테스트용 소스코드와 자원을 포관하는 폴더로
프로그램을 테스트 하는 방법은 직접 실행하는 방법이 있는데 프로그램의 규모가 커지면 커질수록
전체 프로그램을 테스트하기 힘들어지는 경우가 있는데 개별적으로 테스트 하고자 하는 부분만 테스트
하기 위해 사용되는 폴더(패키지)이다
본인은 그렇게 거대한 프로그램을 사용하는 것이 아니기 때문에 이는 사용하지 않고 삭제하려고 한다.
글이 너무 길어지는 관계로 다시보거나, 누군가 볼때 가독성과 집중력에 방해될것을 염려하여 pom.xml부터는 다음 포스팅에서 설정해보겠다