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?