본문 바로가기
Spring

IntelliJ Mybatis 연동해보기

by Alohawaii 2021. 1. 3.

mybatis란?
 - 객체지향언어인 자바의 관계형 데이터베이스 프로그래밍을 보다 쉽게 도와주는 프레임워크
 - jdbc는 자바 프로그램이 데이터베이스와 연결되어 데이터를 주고 받을 수 있게 해주는 프로그래밍 인터페이스
 - mybatis는 jdbc를 보다 편하게 사용하기 위해 개발되었다.

mybatis의 특징
 - sql문이 코드로부터 완전히 분리: mapper파일에 sql코드를 입력해놓고 dao 파일에서 필요할떄마다 가져와서 사용할 수 있다.
 - 생산성: 코드가 짧아진다.
 - 유지보수성 향상: mapper 파일에서만 sql 코드를 입력하고 나중에 sql 코드를 변경할 때 유지보수만 하면, dao에서는 아무런 영향을 받지 않는다.

 

 

mybatis 사용하기

1. 라이브러리 추가

  mybatis, jdbc

        <!-- mybatis -->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.3</version>
        </dependency>
        <!--  -->

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


2. mybatis, db 연결 설정 
 -yml에 dataSource 작성

spring:
  datasource:
    url: jdbc:oracle:thin:@localhost:1521:ORCL
    driver-class-name: oracle.jdbc.driver.OracleDriver
    username: 
    password: 

 

3. resources 하위에 mapper 디렉토리 생성 후 xml파일 작성

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="">
</mapper>

 

4. mapper, service, serviceImpl, domain 디렉토리 생성 후 코드 작성

@RequestMapping("/list")
    public void list() {
        List<BoardVO> boardVOList = boardService.selectBoardList();
        System.out.println(boardVOList.size());

        for(BoardVO boardVO : boardVOList) {
            System.out.println(boardVO.getBno() + "," +
                    boardVO.getUserName() + "," +
                    boardVO.getContents());
        }
    }

 

5. 결과 확인(임시)

oracle에 저장된 데이터를 가져와 출력

 

 

[참고]m.blog.naver.com/PostView.nhn?blogId=wwwkang8&logNo=220989381100&proxyReferer=https:%2F%2Fwww.google.com%2F

 

'Spring' 카테고리의 다른 글

20210226  (0) 2021.02.28
20210225  (0) 2021.02.26
20210224  (0) 2021.02.26
스프링 오라클 데이터베이스 연동  (0) 2020.11.29
인텔리제이 프로젝트 깃허브 연동하기  (0) 2020.11.22