본문 바로가기

IT공부/SPRING

SpringMVC

springMVC 프로젝트를 새로 생성했다.


Other에서 Spring Legacy Project를 선택해주었다.




생성이후 pom.xml에서 아래부분만 설정변경 해주었다.

<modelVersion>4.0.0</modelVersion>
<groupId>kr.or.nextit</groupId>
<artifactId>springmvc</artifactId>
<name>springmvc</name>
<packaging>war</packaging>
<version>1.0.0-BUILD-SNAPSHOT</version>

<properties>
	<java-version>1.8</java-version>
	<org.springframework-version>4.3.9.RELEASE</org.springframework-version>
	<org.aspectj-version>1.7.4</org.aspectj-version>
	<org.slf4j-version>1.7.5</org.slf4j-version>
</properties>


JSP를 지워줬다(톰캣에서 가져다 쓸거기때문에 상관이 없다.)

<dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.1</version> <scope>provided</scope> </dependency>


플러그인에서 source와 target을 1.8로 변경해줬다.

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


변경이후 프로젝트명 위에서 프로퍼티로 들어가 아래처럼 설정해줬다.


AddLibrary에서 ServerRuntime을 클릭후 자신의 서버를 클릭해준다.



이후 Run As에서 Maven Clean을 해줬다.

이후 Run AS에서 Maven Install을 해준다. 이때 성공적으로 설치가 되어야하는데 에러가나면 안된다.



서버도 Clean Tomcat Work Directory로 정리해준다.

서버에서 springmvc를 제외한 나머지를 지워준다.

Run As에서 Run On Server를 실행하는데 


성공적으로 실행되면 헬로월드가 실행되는데 이때 인코딩이 안되어있어서 한글은 깨져있어서 인코딩을 추가해줬다.


HomeController에 들어가면 맨 아래에 return home; 이 있는데. 

이는 src/main/webapp/WEB-INF/views/home.jsp를 뜻한다


home.jsp에선 한글이 깨지게 나오기때문에 인코딩을 추가해줬다.

<%@ page contentType="text/html; charset=UTF-8" %>

web.xml에서 서블릿 이름을 변경해줫다.

<servlet> <servlet-name>dispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcherServlet</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>

공부를위해 src/main/webapp/WEB-INF/spring에있던 root-context.xml을 application-context.xml로 변경해줬다.


경로 진입에 복잡함을 줄이기위해 Java Resources/src/main/resources안에다 application-context.xml, servlet-context.xml을 옮겨준다.


경로를 변경했기때문에 web.xml에있는 경로설정을 아래처럼 바꿔준다.

classpath:application-context.xml

classpath:servlet-context.xml



<context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:application-context.xml</param-value> </context-param>


---------------------------------------------------------------------------

<servlet> <servlet-name>dispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:servlet-context.xml</param-value><!-- servlet-context.xml은 dispatchertServlet이 읽어들ㅇ --> </init-param> <load-on-startup>1</load-on-startup> </servlet>


ps.추후 svn연동과정에서 에러발생으로 pom.xml에 추가해준다.

에러 내용은 아래에 접어놨다.


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



'IT공부 > SPRING' 카테고리의 다른 글

DI AOP MVC  (0) 2019.08.09
스프링 4회차.  (0) 2019.08.07
BoardDao를 BoardMapper로 바꿔준다.  (0) 2019.08.05
mybatis에서 로그를 보기위해 Log4j 설치하기.  (0) 2019.08.05
스프링 2회차.  (0) 2019.08.05