본문 바로가기

Skills/Spring

[Spring] Spring MVC 개요 및 설정하기

SMALL

스프링 프레임워크는 자바진영에서 만든 오픈소스 프레임워크로, 현존하는 프레임 워크 중 가장 많이 사용된다.

웹 어플리케이션 이외에도 일반적인 자바 어플레키이션의 개발에도 쓰이는 범용적인 프로엠워크이며, J2EE(JAVA Enterprise Edition)에서 지원하는 대부분의 기능이 지원되고 있습니다.

 

"스피링은 프로그래밍의 좋은 습관이다." 

디자인 패턴이나, 효츌적이고 생산성 높은 코드를 만들기 위한 방법론 등을 프레임워클르 사용하면서 아주 자연스럽게 습득할 수 있습니다.

 

스프링의 핵심 개념을 꼽으라면 단연 DI(Dependency Injection, 의존성 주입)이 있습니다.

스프링에서는 xml설정파일을 이용하여 각 모듈들을 연결시켜주고(xml 코드 조립), 각 모듈의 변경에 쉽게 대응 할 수 있도록 하며, 모듈의 응집력은 높이고 결합도를 낮추어 어플리케이션의 유연한 구성을 도와줍니다.

 

스프링의 아키텍쳐

 

※ 출처 : http://doc.javanb.com/spring-framework-reference-2-1-0/index.html

 

 

 

스프링의 Core는 스프링 컨테이너로써 각종 빈의 컨테이너 역활을 합니다.

기존의 POJO 개발방식을 가능하게 하며, 각종 유틸리티를 지원합니다.

 

스프링에서는 몰론 Ibatis와 같은 ORM을 더욱 쉽게 사용할 수 있도록 지원하고 있습니다.

 

스프링의 Core를 활용하여 어플리케이션 개발하는 두 가지 관점입니다.

하나는 핵심 관심 사항과, 또 하나는 공통 관심 사항인데 이 두가지를 분리하여 개발 할 수 있게끔 도와주는 역활을 합니다.

 

JEE와 WEB은 웹 개발에 있어 필요한 기능을 지원하는 부분으로 json, jsp, pdf, excel, pdf view등 일반적인 뷰 이외의 마임타입의 뷰를 구성하거나, velocity와같은 라이브러리를 연동하여 동적인 뷰를 구성할 수 있게 도와줍니다.

 

 

스프링 환경 설정





다운로드 후 압축 풀기



\spring-framework-3.2.2.RELEASE\libs 폴더에 있는 모든 파일을 프로젝트에 lib 폴더에 저장합니다.



 

추가가 끝났으면, 이제 web.xml 설정입니다.

WebContent > WEB-INF > web.xml

 <?xml version="1.0" encoding="UTF-8"?>

 

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

id="WebApp_ID" version="2.5">

<display-name>DSPE</display-name>

 

<welcome-file-list>

<welcome-file>index.jsp</welcome-file>

</welcome-file-list>

 

<!-- 데이터베이스 설정파일 -->

 

<context-param>

 

<param-name>contextConfigLocation</param-name>

 

<param-value>applicationContext.xml</param-value>

 

</context-param>

 

<!-- spring 설정파일 -->

 

<servlet>

 

<servlet-name>dispatcher</servlet-name>

 

<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

 

<init-param>

 

<param-name>contextConfigLocation</param-name>

 

<param-value>dispatcher-servlet.xml</param-value>

 

</init-param>

 

</servlet>

 

<!-- Restful 서비스 -->

 

<servlet-mapping>

 

<servlet-name>dispatcher</servlet-name>

 

<!-- <url-pattern>*.do</url-pattern> -->

 

<url-pattern>/</url-pattern>

 

</servlet-mapping>

 

<!-- 인코딩 설정 -->

 

<filter>

 

<filter-name>encodingFilter</filter-name>

 

<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>

 

<init-param>

 

<param-name>encoding</param-name>

 

<param-value>EUC-KR</param-value>

 

</init-param>

 

</filter>

 

<filter-mapping>

 

<filter-name>encodingFilter</filter-name>

 

<url-pattern>/*</url-pattern>

 

</filter-mapping>

 

</web-app>


LIST