Spring 실습

Spring 개발 환경 설정

choco2706 2024. 4. 22. 11:13

우선 내가 쓰는 전자정부 프레임워크의 버전은 3.10 버전을 사용하고 있으며, 자바의 버전은 1.8 버전을 사용증이다.

 

https://www.egovframe.go.kr/home/sub.do?menuNo=41

 

개발환경 - 3.x 다운로드 | 표준프레임워크 포털 eGovFrame

처리중입니다. 잠시만 기다려주십시오.

www.egovframe.go.kr

여기서 다운로드 받을 수 있다

 

 

다운로드 받은 exe 프로그램을 C드라이브에 넣어놓고 실행하면 eGovFrameDev-3.10.0-64bit 폴더가 생긴다.

그 안에 eclipse 폴더안에 들어가보면 eclipse.exe 파일을 실행시킨다.

 

이게 앞으로 우리가 작업할 때 사용 될 프로그램이다. 계속 링크를 타고 들어가기 귀찮으면 바로가기를 만들어 바탕화면에 뺴놓던가 작업표시줄에 고정을 해놓고 사용하자.

 

아무튼, 프로그램을 실행하고 기다리면

 

 

경로를 이렇게 설정해주고 실행하자

이클립스 첫 화면(dark 테마)

 

요즘은 Project Explorer 말고 Package Explorer를 사용한다고 한다

 

2. 환경 설정

JAVA -> Installed JREs

 

자바의 버전이 1.8로 잡혀있으면 맞게 깔린 것

Server

 

 

수업시간에는 Apache Tomcat 8.5를 사용한다.

 

Apache Tomcat® - Apache Tomcat 8 Software Downloads

 

Apache Tomcat® - Apache Tomcat 8 Software Downloads

Welcome to the Apache Tomcat® 8.x software download page. This page provides download links for obtaining the latest versions of Tomcat 8.x software, as well as links to the archives of older releases. Unsure which version you need? Specification versions

tomcat.apache.org

여기서 받아올 수 있다.

 

압축을 풀고, 안에 있는 폴더를 C드라이브에 넣은 뒤 경로를 잡아주면 된다.

 

인코딩 기본 값 설정(UTF-8)

 

인코딩 기본 값 설정(UTF-8)

 

3. 프로젝트 생성(Spring Legacy Project)

Spring Legacy Project 생성

 

Spring MVC Project

 

혹여나 Template에 MVC Project가 없다면 이클립스를 잠깐 끄고

mvc프로젝트생성안될때대처방법.zip
0.00MB

 

압축을 푼 뒤 안의 xml 파일을 경로대로 넣어준 뒤 이클립스를 재실행한 뒤 다시 Spring Legacy Project를 생성해보자

경로 : .metadata\.plugins\org.springsource.ide.eclipse.commons.content.core

 

 

next를 누르면 뭘 다운받으라고 하는데 받아야한다.

 

자바 경로 설정

 

 

생성 끝, 이제 서버 설정을 해보자

 

서버 설정

 

하단 Server 탭에서 파란 글씨를 누른 다음 Tomcat 8.5를 선택하고 

 

 

아까 만든 프로젝트를 눌러 add로 서버에 넣어준 뒤 finish를 하면 서버에 담기게 된다.

 

요런 식으로 담겼으면 성공

 

 

서버를 더블 클릭 후 8080으로 잡혀있는 port번호를 80으로 변경

 

Modul 탭에서 하나를 선택 한 후 Edit를 누르고 / 만 남기고 지운 뒤 ok

 

프로젝트 설정 3총사

프로젝트 설정 3총사

프로젝트 우클릭 후 맨 아래 프로퍼티 클릭

  • Build Path
  • Deployment Assembly
  • Project Facets

빌드 패스 설정

 

1. JRE System Library를 누른 후 Edit -> JavaSE-1.8(JDK1.8)로 설정

2. 우측 Add Libraby를 누른 후 Server Runtime -> Apache Tomcat 8.5 선택

 

Project Facets 설정

 

Project Facets 탭에서 Dynamic Web Module을 3.1, Java를 1.8로 변경하고,

오른쪽  Runtimes에서 Apache Tomcat 8.5체크

Assembly 설정

Maven 관련이 있으면 됀다.

 

한글 설정

우선 web.xml을 열고(우클릭 -> Open With -> Generic Text 어쩌구로 열어야 함)

web.xml 위치

 

상단에 사진과 같이 3.1로 변경하고

더보기

web.xml : tomcat서버의 설정
웹 프로젝트의 배포 설명자/배치 기술서(deployment description)이며, 웹 프로젝트가 배포되는 데 이용되는 XML 형식의
자바 웹 애플리케이션 환경 설정 부분을 담당함
스프링 웹 프로젝트가 실행되면 가장 먼저 web.xml 파일을 읽어들이고 위부터 차례로 태그를 해석함

1) 네임 스페이스 : 코드에서 이름은 같지만 내용이 전혀 다른 요소와 충돌하지 않도록, 즉 이런 요소를 구별하는 데 사용함
2) 스키마 : 코드의 구조와 요소, 속성의 관계를 정의하여 다양한 자료형을 사용할 수 있도록 정의된 문서 구조, 즉 틀을 의미함
   xsi:schemaLocation 속성은 참조하고자 하는 인스턴스 문서의 URI를 지정함
   두 개의 속성 값은 공백으로 구분. 첫 번째는 사용할 네임 스페이스(보통 기본 네임 스페이스와 동일)고,
   두 번째는 참조할 스키마 파일 이름.

 

<!-- 한글 처리 -->
   <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>
      <init-param>
         <param-name>forceEncoding</param-name>
         <param-value>true</param-value>
      </init-param>
   </filter>
   <filter-mapping>
      <filter-name>encodingFilter</filter-name>
      <!-- 모든 요청에서 -->
      <url-pattern>/*</url-pattern>
   </filter-mapping>

 

web.xml 맨 아래 </web-app> 바로 위에 넣어주면 한글 설정이 된다

 

log4j.xml 설정

log4j 경로

 

 

더보기

   appender : 전달된 로그를 어디에 출력할지 결정(콘솔, 파일 기록, DB 저장)
   priority : 로그 레벨
      - fatal : 심각한 오류 발생
      - error : 요청 처리 중 문제 발생
      - warn : 프로그램 실행에는 문제가 없으나 오류 발생 경고
      - info : 상태변경 등 정보성 메시지
      - debug : 개발 시 디버깅 용도*
      - trace : 상세한 이벤트 용도

 

pom.xml 설정

pom.xml을 열고 119줄쯤에 있는 </dependencies>의 안 쪽에 아래의 코드를 넣어준다.

<!-- Database 라이브러리 시작 -->
      <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
      <!-- XML로 쿼리를 작성하게 해주는 라이브러리 -->
      <dependency>
          <groupId>org.mybatis</groupId>
          <artifactId>mybatis</artifactId>
          <version>3.5.10</version>
      </dependency>
      
      <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
      <!-- 스프링과 mybatis를 연동하게 해주는 라이브러리 -->
      <dependency>
          <groupId>org.mybatis</groupId>
          <artifactId>mybatis-spring</artifactId>
          <version>2.0.4</version>
      </dependency>
      
      <!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc -->
      <!-- 스프링에서 JDBC(Java DataBase Connectivitiy) -->
      <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-jdbc</artifactId>
          <version>${org.springframework-version}</version>
      </dependency>
      
      <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-dbcp2 -->
      <!-- dbcp : database connection pool => 커넥션객체를 미리 만들어놓고 쓰고/반납 
               최근에는 hikaricp를 사용하는 경우도 있음
      -->
      <dependency>
          <groupId>org.apache.commons</groupId>
          <artifactId>commons-dbcp2</artifactId>
          <version>2.7.0</version>
      </dependency>
      
      <!-- https://mvnrepository.com/artifact/org.bgee.log4jdbc-log4j2/log4jdbc-log4j2-jdbc4 -->
      <!-- 로깅을 위한 라이브러리. 쿼리를 console이나 파일 로그로 볼 수 있음 -->
      <dependency>
          <groupId>org.bgee.log4jdbc-log4j2</groupId>
          <artifactId>log4jdbc-log4j2-jdbc4</artifactId>
          <version>1.16</version>
      </dependency>
      
      <!-- https://mvnrepository.com/artifact/com.oracle.database.jdbc/ojdbc6 -->
      <!-- ojdbc6 : oracle java database connectivity 드라이버 -->
      <dependency>
          <groupId>com.oracle.database.jdbc</groupId>
          <artifactId>ojdbc6</artifactId>
          <version>11.2.0.4</version>
      </dependency>
      <!-- Database 라이브러리 시작 -->

 

그 다음 11번째 줄의 properties 안의 내용을

<properties>
		<java-version>1.8</java-version>
		<org.springframework-version>5.2.5.RELEASE</org.springframework-version>
		<org.aspectj-version>1.6.10</org.aspectj-version>
		<org.slf4j-version>1.6.6</org.slf4j-version>
	</properties>

 

로 바꿔주고

 

프로젝트 우클릭 -> Maven build 클릭

 

 

Goals 부분에 compile을 적고 run을 눌러주면

 

 

이런식으로 하단 콘솔창에 BUILD SUCCESS라고 뜨면 성공이다.

Maven 생명 주기를 설정해준 것이라고 한다.

 

그 다음 서버를 실행시키고

서버 실행

 

 

콘솔 창에 위와 같이 로그가 나오면 성공적으로 설정이 완료되었다.

 

크롬을 열고 URL에 localhost/를 검색하면

localhost/

위 사진과 같이 출력이 되게 된다.

 

환경 설정 끝!

 

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

 

 

 

 

 

 

 

 

나는....?