SPRING

SPRING 기본설정 (XML, JAVA 공통부분)

Adev 2022. 11. 24. 21:06

0. 필수 프로그램 설치

JDK11

Tomcat9

STS3

오라클(Oracle11g, SQLDeveloper(ojdbc8)) 또는 MySQL

 

 

 

 

1. STS3 설정

: 스프링에서 관리되는 객체(Bean)에 대한 설정은 XML이나 Java Configuration을 이용해 처리한다.

둘 중 한 방법을 선택한 후 프로젝트 내에서 동일한 방식을 사용한다. (SpringBoot는 Java설정만 가능)

 

1.1 톰캣 설정

: window -> preference -> server선택

 

 

1.2. PRING MVC 프로젝트 생성 방법

: File -> New -> Spring Legacy Project -> Spring MVC Project 생성 (XML 방식)(기본 spring버전 : 3.X, servlet버전 2.5)

 

 

+ 프로젝트 생성 시 다운로드되는 라이브러리는 사용자 폴더의 '.m2' 폴더에 저장된다.

+ 경로설정 : 웹 프로젝트는 절대경로를 이용하는 것을 권한다.
                     방법1) Tomcat server 더블클릭 -> 'Modules' 메뉴 ->path 속성 '/'로 지정
                     방법2) 해당 프로젝트 우클릭 -> Properties -> Web progect settings 속성을 '/'로 지정

 

 

1.3. workspace 언어 설정 변경 (window 기본 설정 : 'MS949')

1) window -> preferences -> general -> workspace 
2) window -> preferences -> web

 

 

 


2. SPRING 설정

 

2.1. Java & Spring 버전 변경 

: pom.xml의 <properties>태그의 <org.springframework-version>태그를 수정한다. 
(Java 1.8 이상 - 스프링 5.x버전

<properties>
<java-version>1.8</java-version>
<org.springframework-version>5.0.7.RELEASE</org.springframework-version>
<org.aspectj-version>1.9.0</org.aspectj-version>
<org.slf4j-version>1.7.25</org.slf4j-version>
</properties>



2.2. Maven Java version 변경

: pom.xml의 <plugin>태그의 maven-compiler-plugin을 수정한다.

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.5.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <compilerArgument>-Xlint:all</compilerArgument>
                    <showWarnings>true</showWarnings>
                    <showDeprecation>true</showDeprecation>
                </configuration>

 


2.3. log4j 버전 변경

: Spring Legacy Project는 기본으로 Log4j가 추가되어 있다.

: pom.xml 수정

<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>



2.4. junit 버전 변경 (4.10이상 필수)

: pom.xml 수정

<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>

 

 

2.5. servlet 버전 변경 (3.x이상 사용 권장)

: pom.xml 수정 (<artifactId>,<version>수정, <scope>수정)

<!-- Servlet -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>

 

 

2.6. spring-test 라이브러리

: poml.xml에 추가

<dependency> 
  <groupId>org.springframework</groupId> 
  <artifactId>spring-test</artifactId> 
  <version>${org.springframework-version}</version> 
</dependency>

 

 

2.7. Lombok 라이브러리 별도 설치

컴파일 시 자주 사용되는 코드들을 자동으로 생성해준다.
ex) getter/setter, toString(), 생성자 등

 

: https://projectlombok.org/download에서 파일을 다운로드한 후 sts.exe가 있는 폴더에 넣고 설치한다.

: pom.xml에 <dependency> 추가

<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.24</version>
<scope>provided</scope>
</dependency>

 

 

 


3. 추가

 

+ Jackson라이브러리와 jackson xml 처리 라이브러리

: 자동으로 Json타입으로 객체를 변환해 브라우저에 전달한다. ex) @ResponseBody(string타입)
: pom.xml에 dependency 추가

<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.9.4</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.dataformat/jackson-dataformat-xml -->
<dependency>
    <groupId>com.fasterxml.jackson.dataformat</groupId>
    <artifactId>jackson-dataformat-xml</artifactId>
    <version>2.9.6</version>
</dependency>

+

	<!-- 테스트 시 Java 인스턴스를 JSON타입 문자열로 변환할 때 사용한다. -->
        <!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
        <dependency>
			<groupId>com.google.code.gson</groupId>
			<artifactId>gson</artifactId>
			<version>2.8.2</version>
		</dependency>

 

+ AOP 관련 라이브러리

		<!-- AspectJ -->
		<dependency>
			<groupId>org.aspectj</groupId>
			<artifactId>aspectjrt</artifactId>
			<version>${org.aspectj-version}</version>
		</dependency>
<!-- https://mvnrepository.com/artifact/org.aspectj/aspectjweaver -->
<dependency>
    <groupId>org.aspectj</groupId>
    <artifactId>aspectjweaver</artifactId>
    <version>${org.aspectj-version}</version>
</dependency>

 

 


SPRING 설정 (XML)

SPRING 설정 (JAVA Configuration)

'SPRING' 카테고리의 다른 글

SPRING 페이징 처리 (pagination)  (0) 2022.11.30
SPRING 로딩 구조, 어노테이션  (0) 2022.11.25
SPRING Database 연동과 Jdbc 지원  (0) 2022.11.18
HTML 이외의 View 구현  (0) 2022.11.17
SPRING tiles2  (0) 2022.11.16