Programing/Spring , Springboot , JPA

Spring 설정방법 [Main]

하얀배터리 2020. 5. 28. 02:18
728x90

 

1.  프로젝트 생성

2. 한글처리 부분[home.jsp / web.xml] 

3. prom.xml [버전 설정 , 의존성 주입 ]  root-context.xml[namespase설정] . MySQL 설정 , mapper 설정

4.

 

 

설정 후 보편적 작업순서 

  ① jsp작성
  ② 컨트롤러 작성
  ③ 서비스객체에 추상메소드 추가
  ④ 서비스 구현객체에 메소드 생성하면서 수행할 내용 기술
  ⑤ DB작업일경우는 서비스 구현객체에서 Dao인터페이스를 호출하면서, 추상 메소드 작성
  ⑥ Dao의 구현(실행)부로서 매퍼(mapper)를 작성한다.

 


1.  프로젝트 생성

File - New - Spring Legacy Project 선택

대화상자에서 프로젝트명(springTest) 입력후 'Spring MVC Project' 선택

package는  '.' 을 기준으로 3개이상으로 지정함.(ex : com.spring.springTest)

 

자세한 설명  [Programming/JSP 기초 ~ 고급] - Spring STS 설치 + 초기 설정 [한글처리],선언

 


 

2. 한글처리 부분 

 2.1. views/home.jsp 파일을 열어서 맨위에

 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> 추가 

  2.2 web.xml    한글처리 코드 추가

  <filter>
    <filter-name>encoding</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>
  <filter-mapping>
    <filter-name>encoding</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

3.DataBase 작업을 위한 설정

 3.1. prom.xml [스프링 환경설정 파일]

java-version 부분에서 현재 사용하는 java버전으로 변경

 

 

  3.2 의존성 주입 [pom.xml]  자세한 설명 :  pom.xml 설정 [스프링 환경설정] [MyBatis설정]

  

   아래 표시된 코드를 삽입해 준다.

 

 

	  <!-- Mybatis / Mybatis-Spring 설정 -->
	  <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
		<dependency>
		    <groupId>org.mybatis</groupId>
		    <artifactId>mybatis</artifactId>
		    <version>3.4.1</version>
		</dependency>
	  <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
		<dependency>
		    <groupId>org.mybatis</groupId>
		    <artifactId>mybatis-spring</artifactId>
		    <version>1.3.2</version>
		</dependency>
	  
	  <!-- Mysql -->
	  <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
		<dependency>
		    <groupId>mysql</groupId>
		    <artifactId>mysql-connector-java</artifactId>
		    <version>6.0.6</version>
		</dependency>
		
		<!-- Spring JDBC 설정 -->
		<!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc -->
		<dependency>
		    <groupId>org.springframework</groupId>
		    <artifactId>spring-jdbc</artifactId>
		    <version>${org.springframework-version}</version>
		</dependency>

 

3.3 Namespaces(root-context.xml) 설정  5가지 항목 체크

[자세한 설명]

[Programming/JSP 기초 ~ 고급] - Spring 기본 3 - root-context.xml Mapper/Dao위치 관련 설정

 

  : aop
  : beans
  : context
  : jdbc
  : mybatis

 

 

3.4 .MySQL설정-DB연동 (root-context.xml) 설정하기

1. DB 설정  2.  mapper설정

 

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
  <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
  <property name="url" value="jdbc:mysql://localhost:3306/DB이름?useSSL=false&amp;serverTimezone=UTC">
  </property>
  <property name="username" value="mysql계정아이디"></property>
  <property name="password" value="mysql계정비번"></property>
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="dataSource" />
    <property name="mapperLocations" value="classpath:mappers/**/*Mapper.xml"></property>
  </bean>

  <mybatis-spring:scan base-package="dao위치" />

[자세한 설명]  Spring 기본 3 - root-context.xml Mapper/Dao위치 관련 설정

 

 


4.패키지 , 폴더 생성

 

 패키지와 폴더 생성

: 패키지 생성위치는 src/main/java 아래 생성한다

   패키지명 com.spring.shinjk.dao

 : mappers 폴더 생성위치? src/main/resources
    - 폴더명 : mappers

  : 작업할 폴더 생성(user폴더)
    - 위치 : src/main/webapp/WEB-INF/views/
    - 폴더명 : user

 

 

 

 

 


5.userMapper.xml 파일 생성 후 코드 삽입

 

<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.spring.springTest.dao.UserDao">
 //여기에 내용 넣어준다.
</mapper>

 


6. DatabaseTable 생성하기 

user폴더에 user.sql 파일 생성 후 

STS에 Datasource Explorer 연결 

[Programming/JSP 기초 ~ 고급] - Spring 기본 4 - STS Data source Explorer 설치

 


7 기본 패키기 만들기

 

 

 

 

MemberService 인터페이스
MemberServiceImp 클래스

 

MemberServiceImp 클래스는 어노테이션 (@Service)을 작성해서 서비스객체임을 알린다. 

 


 

 

 

 

 

 

 

 

 

 

 

 


 

 

728x90