DBCP와 Mybatis

김태형·2023년 12월 6일
0

JSP

목록 보기
8/10

1. DBCP

1-1. DBCP(DataBase Connection Pool)

  • 데이터베이스와 연결된 커넥션을 미리 만들어서 저장해두고
    있다가 필요할 때 저장된 공간(pool)에서 가져다 쓰고 반환하는
    기법을 말한다.
  • 커넥션 풀을 이용하고 커넥션을 미리 만들어두고 사용하기 때문에
    매번 사용자가 요청할 경우 드라이버를 로드하고, 커넥션 객체를
    생성해 연결하고 종료하는 비효율적인 작업을 하지 않아도 된다.
  • 즉 데이터베이스의 부하를 줄일 수 있고 자원을 효율적으로 관리할
    수 있다.

2. JNDI(Java Naming and Directory Interface)

  • 디렉토리 서비스에서 제공하는 데이터 및 객체를 발견(discover)
    하고 참고(lookup)하기 위한 자바 API.
  • 외부(WAS)에서 있는 객체를 가져오기 위한 기술이다
  • 즉, DB Pool을 미리 Naming시켜두는 방법(DB 연결방법 중 하나)
  • 우리가 저장해 놓은 WAF의 데이터베이스 정보에 JNDI를 설정해
    놓으면 웹 어플리케이션은 JNDI만 호출하면 간단해진다.

3. MyBatis

  • 객체 지향 언어인 자바의 관계형 데이터베이스 프로그래밍을
    좀 더 쉽게 할 수 있게 도와주는 개발 프레임 워크로서 JDBC를 통해
    데이터베이스에 엑세스하는 작업을 캡슐화하고 일반 SQL쿼리,
    저장 프로시저 및 고급 매핑을 지원하며 모든 JDBC코드 및 매개
    변수의 중복 작업을 제거합니다.
  • MyBatis에서는 프로그램에 있는 SQL쿼리들을 한 구성파일에
    구성하여 프로그램 코드와 SQL을 분리할 수 있는 장점을 가지고 있다.
  • MyBatis는 기존 JDBC방식과 달리 SQL문을 XML파일에 작성함으로써
    코드가 줄어들고 SQL문만 따로 관리하기 때문에 수정이 편해진다.
  • 또한 DBCP를 사용하여 커넥션을 여러개 생성하기 때문에
    JDBC만 사용하는 것보다 작업 효율과 가독성이 좋다.

0개의 댓글