오늘은 Spring Maven 연동 및 설치에 대해서 알아보겠습니다.
1. 프레임워크란?
자바로 개발을 하기 위해 따르는 일련을 개발 구조라고 볼수 있습니다.
개발을 하면서 프로그램의 구조는 개발자의 성향에 따라 구조나 흐름이 달라질 수 있는데요.
프레임워크를 사용하게되면 프레임워크가 제공하는 가이드 라인과 라이브러리를 사용 하게 됩니다.
그래서 프레임워크를 사용하여 개발하는 프로그램은 생산성과 일관성을 얻을 수 있는 장점이 있습니다.
장점 : 구조적, 안정적, 유지보수 용이, 생산성 향상
단점 : 무분별한 프레임워크의 사용으로 인한 개발자 능력 저하
2. Spring 프레임 워크
1) 동적 웹 어플리케이션을 개발하기 위한 기능을 모아놓은 경량화 프레임워크로 우리나라에서 전자정부프레임워크로 불리고 있다.
2) 특징.
– IOC : 프로그램내에서 사용되는 객체를 사용자가 직접관리 하지 않고 컨테이너가 객체를 생성하고 관리한다 -> ApplicationContext.xml
– DI : 객체간의 의존관계를 외부에서 정의하고 주입한다. 불필요한 의존관계를 정리 할 수 있음
– AOP : 비지니스로직(개발해야 할 프로그램)과 공통모듈(트랜젝션, 로깅등 모든 프로그램에 있어야 할 기능)을 분리하여 관리하는 것
이후 비지니스 로직에 공통을 주입하여 기능의 구분이 가능함
3. Maven 이란
Spring 프레임워크를 사용하면서 다양한 라이브러리를 사용하게 되는데요.
db연결을 위한 ojdc나 mybatis등을 사용하기 위해 jar 파일을 구해 프로젝트에 추가시켜야 하는 단점이 있는데요.
Maven은 Pom.xml 에 해당 라이브러리를 작성함으로써 자동적으로 jar파일을 다운로드 하는 기능을 가집니다.
4. Spring 설치 및 Maven 연동 하기
- 설치 전 자바JDK 와 이클립스 톰캣이 연동되어 있어야 합니다.
4.1 Spring sts 설치
우선 Spring 프레임워크를 설치해야 합니다.
이클립스를 실행후 help -> MarketPlace 로 이동합니다.
F
ind 에 sts로 검색하시면 Spring Tool Suite 이 뜨는데 이클립스 버전에 맞게 설치합니다.
Install과 Confirm 버튼을 통해 sts를 설치 합니다.
약관 동의를 하시고 Finish를 클릭합니다.
설치가 진행되는 모습입니다.
설치가 완료되면 이클립스를 재시작 합니다.
4.2 Maven 설치
Maven 다운로드 사이트로 접속하셔서 설치 파일을 다운을 받습니다.
그리고 C:에 압축을 풀어줍니다
이전에 소개했던 jdk 설정 방법과 마찬가지로 환경설정을 해줘야 합니다.
다음과 같이 MAVEN_HOME에 Maven 경로를 지정해 줍니다.
그리고 위와 같이 세부 경로인 bin을 path에 지정해 줍니다.
환경변수 등록 후 cmd창에 mvn -version을 쳤을때 다음과 같이 나오면 성공입니다.
다시 help -> MarketPlace로 이동하여 Maven을 검색하여 위와 같이 설치합니다.
설치가 완료되면 다시 이클립스를 재시작 하게 됩니다.
Maven을 이클립스에 등록하기 위해 Preferences로 이동합니다.
Maven탭의 Installations로 이동하여 Add를 눌러줍니다.
조금전 Maven을 설치했떤 경로를 지정해 줍니다.
위와 같이 경로가 정상적으로 입력되면 OK를 눌러줍니다.
4.3 연동 확인
이제 Spring과 Maven이 연동된 프로젝트를 만들기 위해 File – New -> Others 를 실행합니다.
Spring Project 가 없는 분들이 있을껀데요.
그럴경우 Spring Tool Suite 을 지우고 다시 설치해 주시면 됩니다.
프로젝트 이름을 지정하고 다음을 누릅니다.
패키지 경로 또한 지정해 줍니다.
그럼 위오 같이 프로젝트가 생성되는데요.
톰캣을 구동해 프로젝트를 실행하니 정상적으로 작동되었습니다.
이제 pom.xml에 사용할 라이브러리를 지정하여 사용할 수 있습니다.
Spring Maven 프로젝트 구조는 실무에서도 많이 사용되니 참고하시기 바랍니다.
여러분의 댓글이 빵찌니를 춤추게합니다.
'개발 하자 빵찌니 > Spring' 카테고리의 다른 글
[String] Mybatis 연동 및 간단예제(select, insert) (0) | 2018.02.22 |
---|---|
스프링(Spring) 개발 - (18) 페이징 (jQuery와 Ajax) (0) | 2018.02.22 |
[Spring] 첨부파일 다중 업로드 (0) | 2018.02.22 |