스프링 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)
  • 블로그 메뉴

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

  • 공지사항

  • 인기 글

  • 태그

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

  • 최근 글

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

티스토리툴바