스프링 DB연동 - Mybatis를 이용하여 Oracle, MySQL, MariaDB 기본세팅

2022. 9. 15. 23:11·노빠꾸 개발일지/SPRING
반응형

이번 피드에서는 스프링 환경에서 Mybatis를 이용하여, 대표적인 DB(Oracle, MySQL, MariaDB)에 연결하는 방법을 정리해보겠습니다.

 

1.  pom.xml 필요한 라이브러리 추가하기

우선 제일 먼저 해야할 일은 DB연결을 위한 라이브러리를 추가하는 작업입니다.

 

- 필요한 라이브러리 목록

    <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>3.5.1</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis-spring</artifactId>
      <version>2.0.7</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.springframework/spring-jdbc -->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-jdbc</artifactId>
      <version>5.3.22</version>
    </dependency>
    
    <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-dbcp2 -->
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-dbcp2</artifactId>
        <version>2.9.0</version>
    </dependency>

우선 공통적으로 필요한 라이브러리들은 위와같이 mybatis, mybatis-spring, spring-jdbc, commons-dbcp2이다.

 

pom.xml에 위와같이 추가해주고, 버전은 각자 사용하고자 하는 버전에 맞게 세팅해주면 된다.

 

 

- DB별 필요 라이브러리

1. MySQL

<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.30</version>
</dependency>

MySQL을 이용하기 위해서는 mysql-connector-java를 추가해주면 된다.

 

 

2. Oracle

<!-- https://mvnrepository.com/artifact/com.oracle.database.jdbc/ojdbc6 -->
<dependency>
    <groupId>com.oracle.database.jdbc</groupId>
    <artifactId>ojdbc6</artifactId>
    <version>11.2.0.4</version>
</dependency>

Oracle의 경우 ojdbc를 추가해주면 된다.

 

 

3. MariaDB

<!-- https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client -->
<dependency>
    <groupId>org.mariadb.jdbc</groupId>
    <artifactId>mariadb-java-client</artifactId>
    <version>3.0.7</version>
</dependency>

MariaDB의 경우 mariadb-java-client를 추가해준다.

 

위와 같이 각각 프로젝트에 맞는 라이브러리 추가를 위해 pom.xml에 추가해주면 된다.

 

2. root-context.xml DB 연결정보 세팅

라이브러리 세팅을 마쳤으면, DB연결정보 세팅을 해주면 된다.

 

각 DB별 연결정보를 입력 후, sqlSessionfactory와 sqlSession을 정의해준다.

 

1. MySQL

<!-- DataSource 설정 -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
    <property name="url" value="jdbc:mysql://127.0.0.1:3306/test"></property>
    <property name="username" value="admin"></property>
    <property name="password" value="1234"></property>
</bean>

<!-- sqlSessionFactory --> 
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="dataSource" />
    <property name="configLocation" value="classpath:/mybatis/mybatisConfig.xml" />
    <property name="mapperLocations" value="classpath:/mybatis/mybatisMapper.xml" />
</bean>

<bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
  <constructor-arg ref="sqlSessionFactory" />
</bean>

 

2. Oracle

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
   <property name="driverClassName" value="net.sf.log4jdbc.DriverSpy" />
   <property name="url" value="jdbc:log4jdbc:oracle:thin:@localhost:1521:orcl" />
   <property name="username" value="admin" />
   <property name="password" value="1234" />
</bean>
   
<!-- sqlSessionFactory --> 
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="dataSource" />
    <property name="configLocation" value="classpath:/mybatis/mybatisConfig.xml" />
    <property name="mapperLocations" value="classpath:/mybatis/mybatisMapper.xml" />
</bean>

<bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
  <constructor-arg ref="sqlSessionFactory" />
</bean>

 

3. MariaDB

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
    <property name="driverClassName" value="org.mariadb.jdbc.Driver" />
    <property name="url" value="jdbc:mariadb://127.0.0.1:3306/test" />
    <property name="username" value="admin" />
    <property name="password" value="1234" />
</bean>

<!-- sqlSessionFactory --> 
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="dataSource" />
    <property name="configLocation" value="classpath:/mybatis/mybatisConfig.xml" />
    <property name="mapperLocations" value="classpath:/mybatis/mybatisMapper.xml" />
</bean>

<bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
  <constructor-arg ref="sqlSessionFactory" />
</bean>

 

각 DB별로 위와같이 root-context.xml을 세팅해주면 된다.

 

위와같이 세팅이 완료되면, 기본적인 DB세팅이 완료된 것으로 sqlSession을 이용하여 DB를 호출해 DB사용이 가능하다.

 

이번 피드에서는 스프링 프로젝트에서 MyBatis를 이용하여 각 DB에 따라 연결하기 위한 기본정보에 대해 알아보았습니다.

 

다음 피드에서는 실제 코드에서 사용해보는 예제를 피드로 정리해보도록 하겠습니다.

 

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'노빠꾸 개발일지 > SPRING' 카테고리의 다른 글

스프링 부트(Spring Boot)란?  (0) 2023.02.17
[Spring JPA] 스프링부트 + JPA + MySQL 프로젝트 세팅하기 - 1  (0) 2022.09.22
[Spring] 스프링 기본 환경세팅 정리(WEB.XML)  (0) 2020.12.27
[Spring] Spring Boot 프로젝트 생성하기(Spring Boot란?)  (3) 2020.10.22
[Mac OS] 메이븐(Maven) 설치하기(맥북 메이븐 설치하기) - 메이븐 환경설정  (0) 2020.10.15
'노빠꾸 개발일지/SPRING' 카테고리의 다른 글
  • 스프링 부트(Spring Boot)란?
  • [Spring JPA] 스프링부트 + JPA + MySQL 프로젝트 세팅하기 - 1
  • [Spring] 스프링 기본 환경세팅 정리(WEB.XML)
  • [Spring] Spring Boot 프로젝트 생성하기(Spring Boot란?)
No Backing
No Backing
노빠꾸
    300x250
  • No Backing
    누릇한 노빠꾸 블로그
    No Backing
  • 전체
    오늘
    어제
    • 분류 전체보기 (144)
      • 노빠꾸 서버 (20)
        • AWS (0)
        • 설치관련 (7)
        • 명령어 정리 (2)
        • 서버 설정 (8)
        • Nginx (2)
      • 노빠꾸 개발일지 (70)
        • JAVA (16)
        • JQUERY & JAVASCRIPT (10)
        • HTML5 (0)
        • SPRING (16)
        • Design Patterns (1)
        • DAUM API (1)
        • GIT (10)
        • Python (1)
        • SPRING SECURITY (1)
        • Vue (3)
      • 노빠꾸 데이터베이스 (9)
        • SQL (1)
        • ORACLE (3)
        • MySql (5)
      • 노빠꾸 일상 (13)
      • 노빠꾸 책 추천 (4)
      • 노빠꾸 경제 (20)
      • 노빠꾸 맥북 사용기 (7)
      • 노빠꾸 정보처리기사 정리 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    스프링시큐리티 websecurityconfigureradapter
    스프링부트
    WebSecurityConfigurerAdapter Deprecated
    인텔리제이
    스프링부트란
    스프링부트 프로젝트
    티스토리 사이트맵 등록
    경제용어
    WebSecurityConfigurerAdapter
    리눅스 자바 설치
    맥북 사용 팁
    websecurityconfigureradapter 변경사항
    주식용어
    Spring boot
    websecurityconfigureradapter 빈 등록
    사이트맵
    리노드
    MySQL 사용자 계정 생성
    Linode
    맥북 단축키
    개인서버 추천
    MySQL 데이터베이스 생성
    websecurityconfigureradapter란
    금융용어
    websecurityconfigureradapter 사용법
    스프링 시큐리티 5.7 버전이후 변경사항
    JPA 쿼리 메소드
    우분투 자바 설치
    깃허브 코파일럿
    스프링부트 JPA
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
No Backing
스프링 DB연동 - Mybatis를 이용하여 Oracle, MySQL, MariaDB 기본세팅
상단으로

티스토리툴바