Spring Setting_1

양혜정·2024년 6월 22일
0

spring

목록 보기
1/7

File -> New -> Spring Legacy Project
-> Spring MVC project 클릭
-> com.spring.app 후 확인


변경사항

기본 환경 - 변경 될 환경

  • Spring Framework 3.1.1 - Spring Framework 5.3.22

  • java version 1.6 - java version 11 (JDK 11 을 사용하므로)

  • Maven compiler - Maven compiler
    version 2.5.1 version 3.8.1
    source 1.6 source 11
    target 1.6 target 11

  • servlet-api 2.5 - javax.servlet-api 4.0.1 (apache-tomcat-9.0.x 을 사용하므로)

  • jsp-api 2.1 - javax.servlet.jsp-api 2.3.3 (apache-tomcat-9.0.x 을 사용하므로)


pom.xml

properties 변경

<properties>
		<java-version>11</java-version>      <!-- JDK 11 용 -->
		<jaxb.version>2.2.11</jaxb.version>  <!-- JDK 1.8 까지는 내장되었던 JAXB를 JDK 11 에서는 내장하고 있지 않기 때문에  JDK 11 에서 제거 되었던 JAXB를 사용할 수 있도록 하는 것. 참고로 2.2.11 버전은 JAXB가 모듈화 되기 직전 최신버전임. -->
        <org.springframework-version>5.3.22</org.springframework-version>  
		<org.aspectj-version>1.6.10</org.aspectj-version>
		<org.slf4j-version>1.6.6</org.slf4j-version>
  </properties>

Servlet 변경

  • api와 jsp 변경
<groupId>javax.servlet</groupId>
	 <artifactId>javax.servlet-api</artifactId>
	 <version>4.0.1</version> <!-- 다이나믹 웹 모듈 4.0 서블릿 만들기. 전제조건은 Java 1.8 버전 이상과  Servlet API 4.0 버전(servlet-api-4.0.0.jar) 이 있는 Tomcat 9 버전 이상이어야 함 --> 
	 <scope>provided</scope>
  </dependency>
		<dependency>
	 <groupId>javax.servlet.jsp</groupId>
	 <artifactId>javax.servlet.jsp-api</artifactId>
	 <version>2.3.3</version> 
	 <scope>provided</scope>
  </dependency>

Test(plugin) 변경

  • 2.5.1 -> 3.8.1
  <plugin>
     <groupId>org.apache.maven.plugins</groupId>
     <artifactId>maven-compiler-plugin</artifactId>
     <version>3.8.1</version> <!-- jdk11 부터는 적어도 3.7 버전 이상을 사용해야 한다 --> 
     <configuration>
         <source>${java-version}</source>
         <target>${java-version}</target>
         <compilerArgument>-Xlint:all</compilerArgument>
         <showWarnings>true</showWarnings>
         <showDeprecation>true</showDeprecation>
     </configuration>
  </plugin>

▶ test 아래 dependencies 전에 복붙

<!-- JDK 11 용 시작 -->
   <!-- JDK 1.8 까지는 내장되었던 JAXB를 JDK 11 에서는 내장하고 있지 않기 때문에  JDK 11 에서 제거 되었던 JAXB를 사용할 수 있도록 하는 것-->
	<dependency>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
            <version>${jaxb.version}</version>
        </dependency>
        <dependency>
            <groupId>com.sun.xml.bind</groupId>
            <artifactId>jaxb-core</artifactId>
            <version>${jaxb.version}</version>
        </dependency>
        <dependency>
            <groupId>com.sun.xml.bind</groupId>
            <artifactId>jaxb-impl</artifactId>
            <version>${jaxb.version}</version>
        </dependency>
        <dependency>
	    <groupId>com.sun.activation</groupId>
            <artifactId>javax.activation</artifactId>
	    <version>1.2.0</version>
	</dependency>
   <!-- <dependency>
            <groupId>javax.activation</groupId>
            <artifactId>activation</artifactId>
            <version>1.1.1</version>
        </dependency> 
   -->
        <!-- 현재 JDK 11 사용중인데, @Resource 어노테이션은 JDK 1.8 까지만 지원되고 그 이후로는 지원이 안되므로 JDK 11 에서 사용하려면 아래와 같이 추가해주어야 한다. -->
	<dependency>
	    <groupId>javax.annotation</groupId>
	    <artifactId>javax.annotation-api</artifactId>
	    <version>1.3.1</version>
	</dependency>
   <!-- JDK 11 용 끝 -->

board -> properties
-> java build path -> library -> jdk 11 로 edit 후 apply 해주기
-> java compiler -> 11 로 변경
-> project facts -> 버전 4.0 / 11 변경후 runtimes 체크


web.xml

버전 변경

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="4.0" xmlns="http://xmlns.jcp.org/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd">

root-context.xml

spring -> root-context.xml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:mybatis-spring="http://mybatis.org/schema/mybatis-spring"
	xsi:schemaLocation="http://mybatis.org/schema/mybatis-spring http://mybatis.org/schema/mybatis-spring-1.2.xsd
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
		http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">

servlet-context.xml

spring -> appservlet -> servlet-context.xml
버전변경

<?xml version="1.0" encoding="UTF-8"?>
<beans:beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:beans="http://www.springframework.org/schema/beans"
	xmlns:mvc="http://www.springframework.org/schema/mvc"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:task="http://www.springframework.org/schema/task"
	xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd
		http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-4.3.xsd
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
		http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd">
  <mvc:annotation-driven />
  • <resources mapping="/resources/**" location="/resources/" /> 변경
 <mvc:resources mapping="/resources/**" location="/resources/" />

변경 후 project 우클릭 -> Maven -> Update Project

  • 서버 더블클릭 -> Modules
    -> Path 원하는 곳 변경

  • 실행이 느릴 경우 -> Overviews
    -> Timeouts 를 60 / 30 으로 설정


0개의 댓글

관련 채용 정보