[03] 스프링 프로젝트 생성 - hello wolrd 출력하기
안녕하세요.
MIN-IT입니다. 오늘은 스프링 프로젝트를 생성하여 hello world를 출력해보는 시간을 가지겠습니다.
퍼가실 때 댓글을 남겨주시면 감사하겠습니다.
*스프링 프로젝트를 생성 해보겠습니다.
file-new- spring lagacy project(spring project) or spring starter project
1) File - Spring Legacy Project
실무에서 주로 사용하는 Spring Legacy Project(Spring Project)를 클릭합니다.
2) Spring MVC Project를 클릭합니다. Project name을 마음대로 지정합니다.
-project name 이름 쓰기
-templates안의 스크롤바를 내려서 Spring MVC project를 클릭하기
3) 패키지의 이름을 지정해줍니다.
Finish를 하게되면 일정한 시간이 소요 될 수도 있습니다.
처음 Spring을 사용하는 경우에는 maven이 필요한 라이브러리를 다운 받기 때문에 다운로드하는 시간이 걸립니다.
(STS는 기본적으로 maven을 내장하고 있기 때문에 프로젝트 생성하자마자 maven을 이용해서 스프링에 필요한 라이브러리들이 다운로드되는 것입니다.)
4)maven 이 다운로드한 라이브러리들은 어디에 저장이 될까?
-보통 maven이 다운로드한 라이브러리들은 사용자명 - .m2 라는 폴더안에있습니다.
(숨김파일로 되어있을 수 있으니 제어판에서 숨김파일표시를 통하여 확인가능합니다.)
(사용자명이란? 컴퓨터 이름이라 생각하시면되요
사용자명을 모르신다면 시작프로그램-로그오프를 했을시 나오는 이름이 사용자명이되겠습니다.)
-window7기준인경우
시작 프로그램에서 사용자 폴더가 있기때문에 클릭하셔도 됩니다.
5)생성한 프로젝트 클릭후 오른쪽마우스 -Run - Run As
6) finish 클릭
-저는 톰캣서버를 사용해서 출력하였습니다.
*간단한 수정을 해보겠습니다.
-자신이 만든 프로젝트(helloSpring)의 하위폴더들을 보시면
src/main/java - org.hello.web(여러분들이 만드신 (위에서 만든) 패키지명입니다. )-
homeController.java를 클릭하시게되면
@requstMapping(vlaue = "/이곳이 URL주소가됩니다.", method = requsetMethod.GET )
그냥 run as를 했을경우 localhost :/패키지명/으로 실행이 되었지만
values의값(HomeController을) 입력후 저장하면 경로가 바뀌게됩니다.
Restfull방식으로 GET요청을 했기때문에 인터넷창에서 url을 입력시 helloworld가 출력되는 원리입니다.
(http://localhost:8081/web/HomeController)
실제적으로 출력되는 부분은
helloSpring(프로젝트생성명) - src - main - webapp - WEB-INF - views - home.jsp에서 작성한 글이 화면에 보여지게됩니다.
Spring MVC 프로젝트만 생성했는데 여러가지 이상한 폴더들이 많이 생기셨죠??
그 이유는 전에도 설명했듯이 Spring 프레임워크 즉, 뼈대 나 근간 == 기본세팅이 되어 있기때문에 기본세팅(뷰를 담당하는 폴더/ 컨트롤러를 담당하는 폴더 등등)이 되어있는 곳에서 작업을 하면되기 때문에 일정한 품질이라던지 초기 작업시간(세팅시간)이 줄어드는 장점이 있습니다.
(반대로 생각하면 프레임워크를 사용하면서 자신에 맞게 커스텀(재설정)을 할 것이 많다면 굳이 프레임워크를 사용하지 않고 직접 세팅을 하는 것이 나을 수 있습니다. 굳이 자신에게 안 맞는 프레임워크를 가져다가 수정하는 시간이 더 오래 걸릴 수 있겠죠?)
*Spring 프레임워크 협업 시 Tip
-보통 STS로 프로젝트 생성시 JDK버전은 1.6버전입니다. 하지만 여러 개발자들이 공동으로 작업할때
JDK버전이 서로 다르다면 예기치 못한 에러들이 발생할 수 있습니다.
따라서 JDK버전을 변경하거나 공통적으로 맞추고 싶은 경우에는
생성한 프로젝트 오른쪽마우스 - properties - project Facets 클릭후 Java의 Version을 변경해줍니다.
또한 java Compiler의 버전도 변경한 java 버전으로 변경해주는것이 좋습니다.
생성한 프로젝트 오른쪽마우스 - properties -java Compiler (저는 1.8버전으로 했습니다)
*Spring MVC 프로젝트의 템플릿의 구조
-MVC프로젝트로 생성시 다양한 폴더와 패키지들이 생성되었는데
프로젝트를 진행함에 있어 중요한부분들을 설명을 해드리겠습니다.
src/main/java는 컨트롤러/맵퍼/서비스등의 java 코드의 경로
src/main/resource는 서버 실행시 필요한 파일들의 경로로 ex) DB의 sql문등을 작성하는 곳
test/java 및 test/resource는 한마디로 테스트를 하는곳입니다.
src폴더 하위에 있는 spring은 스프링 설정파일의 경로
views는 jsp 파일의 경로 ==화면에 출력될부분
pom.xml은 maven의 설정파일로 필요한 라이브러리가 있으면 pom.xml에 추가를 시켜주고 재실행 및 저장시 자동으로 라이브러리를 다운로드합니다.(다운로드하는동안 일정시간이 소요될 수 있습니다.)
또한 spring프레임 워크의 버전 업데이트를 위해서
http://projects.spring.io/spring-framework/#quick-start 접속하여
helloproject(자신이 만든프로젝트명)-하위폴더 pom.xml클릭 -pom.xml클릭
1.<dependencies>부분을 복사하여 pom.xml의 <dependencies>부분을 수정 및 저장하여 프레임워크의 버전을 변경할 수 있습니다.
2. pom.xml에서 properties 부분의 springframework-version의 값을 변경 (4.3.5.RELEASE)후 재실행도 됩니다.
Spring 버전변경이 잘 되었는지 확인하고 싶으면
프로젝트의 Maven Dependencies를 클릭하여 버전을 확인 할 수 잇습니다.
helloproject(자신만든프로젝트명)-하위폴더 maven Dependencies클릭
* 포스팅을 마치겠습니다.
궁금하거나 잘못된 부분이있다면 알려주시면 감사하겠습니다.*