02. Spring Legacy Project

농담곰·2023년 6월 16일

Spring

목록 보기
2/3

Spring Legacy Project 만들기 (MVC 패턴)

  1. File - new - Spring Legacy Project 선택
  • project 이름 생성 후, Spring MVC Projext 선택

  • Spring MVC Projext 가 없을 경우에는 Configure templates..에서 Spring-defaults를 제외한 나머지를 remove해준다.

  1. topLevelPackage 생성

< com.mycompany.Project-name > 형식

  • 프로젝트를 실행할 때 가장 최상위가 되는 패키지 지정
  • 해당 패키지에는 자동적으로 HomeController 가 생성된다.
  • MVC 중에 C에 해당하는 Controller
  1. pom.xml 파일 수정
  • 버전과 문자열 수정하기

<!-- 추가 의존 라이브러리 -->
		<!-- MyBatis 라이브러리 -->
	  	<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis</artifactId>
			<version>3.2.8</version>
		</dependency>
	  	<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis-spring</artifactId>
			<version>1.2.0</version>
		</dependency>
		<!-- Spring JDBC 라이브러리 -->
	  	<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-jdbc</artifactId>
			<version>4.0.0.RELEASE</version>
		</dependency>
		<!-- 파일업로드 처리를 위한 라이브러리 (SmartEditor 에서도 필요함)-->
	  	<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
			<version>2.4</version>
		</dependency>
	  	<dependency>
			<groupId>commons-fileupload</groupId>
			<artifactId>commons-fileupload</artifactId>
			<version>1.3.1</version>
		</dependency>						
		<!--  json, xml 응답을 편하게 할수 있도록 도와 주는 라이브러리 -->
		<dependency>
		    <groupId>com.fasterxml.jackson.core</groupId>
		    <artifactId>jackson-databind</artifactId>
		    <version>2.6.0</version>
		</dependency>
		<!-- Aop 용 라이브러리 -->
	  	<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-aop</artifactId>
			<version>4.0.0.RELEASE</version>
		</dependency>
	  	<dependency>
			<groupId>org.aspectj</groupId>
			<artifactId>aspectjweaver</artifactId>
			<version>1.8.0</version>
		</dependency>
	  	<!-- Spring Security 관련 라이브러리 -->
	  	<dependency>
		    <groupId>org.springframework.security</groupId>
		    <artifactId>spring-security-web</artifactId>
		    <version>4.0.0.RELEASE</version>
		</dependency>
		<!-- 트렌젝션 처리를 위한 라이브러리 -->
		<dependency>
		    <groupId>org.springframework</groupId>
		    <artifactId>spring-tx</artifactId>
		    <version>4.0.0.RELEASE</version>
		</dependency>
                       <!-- 오라클 라이브러리 -->
		<dependency>
		    <groupId>com.oracle.database.jdbc</groupId>
		    <artifactId>ojdbc8</artifactId>
		    <version>21.1.0.0</version>
		</dependency>
  • 위의 dependency 를 dependencies 의 자식요소로 추가해서 의존 라이브러리 추가
  • pom.xml 수정 후에는 현재 프로젝트에서 Maven - Update Project 진행 해준다
  1. 프로젝트 실행
  • Run As - Run on Server 를 통해 실행
  • 연결할 서버 설정 - Finish (서버 설정하는 법은 따로 정리..)
  1. 실행된 화면 확인
  • 현재 한글이 깨진 상태니 web.xml 파일에 인코딩 필터 정의
<!-- post 방식 전송될때  한글 깨지지 않도록 Spring 인코딩 필터 정의하기  -->
   <filter>
      <filter-name>EncodingFilter</filter-name>
      <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
      <init-param>
         <param-name>encoding</param-name>
         <param-value>utf-8</param-value>
      </init-param>
   </filter>
   <!-- Spring 인코딩 필터 맵핑하기 -->
   <filter-mapping>
      <filter-name>EncodingFilter</filter-name>
      <url-pattern>/*</url-pattern>
   </filter-mapping>
  • 실행시킬 메인 화면 (home.jsp) 파일에 인코딩 추가
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
  • 재실행시, 한글이 깨지지 않고 제대로 나오는 모습 확인 가능

0개의 댓글