본문 바로가기
공부/Spring

[Spring] Oracle SQL을 사용하여 마이비트스(Mybatis) 연동하기

by students 2022. 8. 28.

MyBatis는 개발자의 부담이 적고, 생상선 향상에 도움이 된다고 한다. 원래 JDBC를 이용해서 프로그램 소스 안에서 복잡하게 SQL문을 작성하는 방식이다. JDBC로 된 프로젝트를 본 적 있는데 진짜 복잡해서 한눈에 보기 힘들었다. JDBC는 SQL을 수정해야 할 경우 프로그램을 수정해야 하기 때문에 유연성 또한 좋지 못하다. 마이바티스는 SQL을 xml에서 작성하기때문에 SQL 수정이 자유롭고 가독성 또한 좋다.

 

1 pom.xml 

Mybatis 라이브러리를 추가한다.

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
        <!-- ja : 오라클!! -->
        <dependency>
            <groupId>com.oracle.database.jdbc</groupId>
            <artifactId>ojdbc8</artifactId>
            <version>21.1.0.0</version>
        </dependency>        
                
        <!-- Mybatis 관련 라이브러리 추가.. -->
        <dependency>
            <groupId>commons-dbcp</groupId>
            <artifactId>commons-dbcp</artifactId>
            <version>1.4</version>            
        </dependency>
        
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.6</version>        
        </dependency>
        
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis-spring</artifactId>
            <version>1.3.2</version>                    
        </dependency>
    
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>${org.springframework-version}</version>
        </dependency>    
        
cs

 

2 src/main/resource/spring

context-datasource.xml 추가

context-mapper.xml 추가

 

3 context-datasource.xml - Oracle 연결

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:mybatis-spring="http://mybatis.org/schema/mybatis-spring"
    xsi:schemaLocation="http://mybatis.org/schema/mybatis-spring http://mybatis.org/schema/mybatis-spring-1.2.xsd
        http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd">
 
    <!-- DataSource 인스턴스 생성 및 등록 -->
    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
        <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
        <property name="url" value="jdbc:oracle:thin:@localhost:1521:xe"></property>
        <property name="username" value="scott"></property>
        <property name="password" value="students"></property>
    </bean>    
 
</beans>
 
cs

- 12행 : oracle 연결할때 아이디이다.

- 13행 : oracle 연결할떄 비밀번호이다.

 

4. context-mapper.xml - Spring 연결

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:mybatis-spring="http://mybatis.org/schema/mybatis-spring"
    xmlns:context="http://www.springframework.org/schema/context"
    xsi:schemaLocation="http://mybatis.org/schema/mybatis-spring http://mybatis.org/schema/mybatis-spring-1.2.xsd
        http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd">
        
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource"/>
    </bean>
    
    <mybatis-spring:scan base-package="com.spring.example.*.mapper"/>    
</beans>
cs

- 14행 : SQL 문을 편집할 수 있는 xml을 모아두는 폴더이다. com/spring/example/*/mapper 폴더 안에 xml 을 모두 읽어들인다.

댓글