320x100

이전글

2022.01.29 - [Coding story/go Spring,JSP] - #Spring(3) - 스프링의 예제로 본 동작 원리

2022.01.27 - [Coding story/go Spring,JSP] - #Spring(2) - 스프링MVC프로젝트의 구조, pom.xml

2022.01.27 - [Coding story/go Spring,JSP] - #Spring(1) - STS 설치 및 MVC프로젝트 생성

 

# porm.xml (연동 라이브러리 연결)

  • Mybatis (XML형식으로 쿼리 작성함)
  • mybatis-spring (Mybatis와 스프링연동)
  • spring-jdbc (jdbc와 스프링연동)
  • commons-dbcp2 (데이터베이스 커넥션 풀)
  • ojdbc6 (오라클과 자바 연동 라이브러리)
  • log4jdbc-log4j2-jdbc4(콘솔창을 통하여 query결과를 확인가능)
  • lombok(getter,setter,ToString 자동생성 - 사용시 POJO가 아니게 된다.(의존성주입을 잃음)

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<!-- Database 라이브러리 -->
        <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
        <!--XML로 쿼리를 작성하게 해주는 라이브러리-->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.5.9</version>
        </dependency>
        
        <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
        <!-- MYBATIS와 SPRING을 연동해주는 라이브러리 -->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
            <version>2.0.6</version>
        </dependency>
        
        <!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc -->
        <!-- 스프링버전 5.2.5버전과 맞추어놓음 JDBC -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>${org.springframework-version}</version>
        </dependency>
        
        <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-dbcp2 -->
        <!-- 
            데이터베이스 커넥션 풀, 커넥션을 미리 여러개 만들어 놓고, 빌려쓰다가 사용이 끝나면 반납
            최근에 hikaricp를 사용하는 경우가 있음 
        -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-dbcp2</artifactId>
            <version>2.9.0</version>
        </dependency>
        
        <!-- https://mvnrepository.com/artifact/org.bgee.log4jdbc-log4j2/log4jdbc-log4j2-jdbc4 -->
        <!-- logging을 위한 라이브러리. Query를 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 -->
        <!-- oracle과 java를 연결해주는 라이브러리 -->
        <dependency>
            <groupId>com.oracle.database.jdbc</groupId>
            <artifactId>ojdbc6</artifactId>
            <version>11.2.0.4</version>
        </dependency>
        
        <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
        <!-- 
            자바빈 클래스인 VO에서 Getter/Setter메서드,toString()메서드를 자동으로 생성
            LoggerFactory 사용가능
        -->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.22</version>
            <scope>provided</scope>
        </dependency>
cs

 

# root-context.xml (jdbc연결설정 <로그인,sql.xml의 위치설정>)

classpath:/sqlmap/**/*_SQL.xml 위치: src - main - resources - sqlmap 의 아무이름_SQL.xml 을 말한다

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd">
    
    <!-- Root Context: defines shared resources visible to all other web components -->
    
 
     <!-- dataSource? 데이터베이스와 관련된 정보를 세팅하는 것 -->
    <bean id="dataSource"
        class="org.apache.commons.dbcp2.BasicDataSource"
        destroy-method="close">
        <property name="driverClassName" 
        value="oracle.jdbc.driver.OracleDriver" />
        <property name="url" 
        value="jdbc:oracle:thin:@호스트이름:포트번호:sid" />
        <property name="username" value="오라클아이디" />
        <property name="password" value="오라클비밀번호" />
    </bean>
    <!-- 위의 dataSource객체가 아래의 sqlSessionFactory안으로 들어감 -->
 
    <!-- 
        sqlSessionFactory는 데이터베이스와 연결을 맺고 끊어질 때까지의 라이프사이클을 관리하는
        sqlSession 객체를 만듦
     -->
    <bean id="sqlSessionFactory"
    class="org.mybatis.spring.SqlSessionFactoryBean">
        <!-- 데이터소스를 설정 -->
        <property name="dataSource" ref="dataSource" />
        <!-- 매퍼 xml 파일의 위치.  -->
        <property name="mapperLocations"
        value="classpath:/sqlmap/**/*_SQL.xml" />
        <property name="configLocation"
        value="/WEB-INF/mybatisAlias/mybatisAlias.xml" />
    </bean>
    
    <!--
        데이터베이스에 개별적으로 쿼리를 실행시키는 객체, 우리는 소스코드에서 이 객체를 사용하여
        Query를 실행시킨다. 
        ref = 참조
        고로 위의 sqlSeesionFatory를 참조
     -->
    <bean id="sqlSessionTemplate"
    class="org.mybatis.spring.SqlSessionTemplate">
        <constructor-arg index="0" ref="sqlSessionFactory" />
    </bean>
    
</beans>
 
cs

# 확인결과

스프링 프로젝트 -> 우클릭 -> Run-As -> Maven build 
아래창처럼 Build Success 출력시 라이브러리 설치가 이상없이 완료되었음을 의미함

 

반응형
  • 네이버 블로그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기