1. 들어가며
스프링 5 프로그래밍 입문 1/7
스프링이란
스프링(Spring)은 매우 방대한 기능을 제공하고 있어서 스프링을 한 마디로 정의하기는 힘들다. 흔히 스프링이라고 하면 스프링 프레임워크를 말하는데, 주요 특징은 다음과 같다.
의존 주입(Dependency Injection , DI 지원)
AOP(Aspect-Oriented Programming ) 지원
MVC 웹 프레임워크 제공
JDBC, JPA 연동, 선언적 트랜잭션 처리 등 DB 연동 지원
이외에도 스케줄링, 메시지 연동(JMS), 이메일 발송, 테스트 지원 등 다양한 기능을 제공한다.
실제로 스프링 프레임워크를 이용해서 웹 어플리케이션을 개발할 때는 스프링 프레임워크만 단독으로 사용하기보다는 여러 스프링 관련 프로젝트를 함께 사용한다. 현재 스프링을 주도적으로 개발하고 있는 피보탈(Pivotal)은 스프링 프레임워크뿐만 아니라 어플리케이션 개발에 필요한 다양한 프로젝트를 진행하고 있다.
스프링 데이터 : 적은 양의 코드로 데이터 연동을 처리할 수 있도록 도와주는 프레임워크이다. JPA, 몽고 DB, 레디스 등 다양한 저장소 기술을 지원한다.
스프링 시큐리티 : 인증/인가와 관련된 프레임워크로서 웹 접근 제어, 객체 접근 제어, DB - 오픈 ID - LDAP 등 다양한 인증 방식, 암호화 기능을 제공한다.
스프링 배치 : 로깅/추적, 작업 통계, 실패 처리 등 배치 처리에 필요한 기본 기능을 제공한다.
이외에도 다양한 프로젝트가 존재하며 각 프로젝트에 대한 내용은 https://spring.io 사이트애서 확인할 수 있다.
이 책의 범위
메이븐과 그레이들을 이용한 스프링 프로젝트 생성
스프링을 이용한 객체 생성과 의존 주입 처리
스프링 자바 설정
스프링을 이용한 AOP 프로그래밍 기초
JDBC 프로그래밍과 선언적 트랜잭션 처리
스프링의 MVC 프레임워크를 이용한 웹 어플리케이션 개발 기초
코딩을 위한 준비물
JDK
Maven
Eclipse
JDK 설치 및 JAVA_HOME 환경변수 설정
스프링 버전에 따라 필요한 최소 자바 버전은 다음과 같다.
스프링 5 : 자바 8 이상
스프링 4.3 : 자바 6 이상
프로젝트 구성 도구 설치
스프링 프레임워크에는 다양한 모듈이 존재한다.(spring-core, spring-beans, spring-context, spring-aop, spring-webmvc, spring-jdbc 등) 각 모듈은 스프링 프레임워크에 포함되어 있지 않은 다른 모듈을 필요로 한다. 각 모듈은 모두 메이븐 중앙 레포지토리를 통해서 배포되고 있다. 자바 프로젝트를 구성할 때 주로 사용하는 빌드 도구인 메이븐(Maven) 과 그레이들(Gradle)은 둘 다 메이븐 리포지토리를 지원한다.
메이븐 설치
http://maven.apache.org 에서 Download 메뉴를 눌러 메이븐 최신 버전을 다운로드한다.
메이븐을 다운로드 한 뒤 압축을 풀고 Path 환경변수에 [메이븐 설치 폴더 경로]\bin을 추가한다.
cmd에서 mvn -version을 통해 설치되었는지 확인할 수 있다.
이클립스 설치
이클립스는 자바 IDE(통합 개발 환경) 중 가장 많이 사용되는 개발 도구다. 이클립스는 http://www.eclipse.org/downloads/eclipse-packages 사이트에서 다운로드할 수 있다.
매이븐과 그레이들 플러그인이 연동되어 있고 웹 개발에 필요한 기능을 제공하는 Eclipse IDE for Java EE Developers 패키지를 다운로드 한다.
파일 다운 후 압축을 풀면 eclipse 폴더가 생긴다. 생성된 eclipse 폴더의 eclipse.exe 파일을 실행하면 이클립스가 실행된다.
Last updated
Was this helpful?