웹 서버(7)

9mond·2023년 8월 28일
0
post-thumbnail

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만 사용하는 것보다 작업 효율과 가독성이 좋다.

    https://blog.mybatis.org/p/products.html

    다운로드 클릭

    mybatis-3.5.13.zip 다운로드

    lib 폴더에 추가

    주소 만들기 API
    카카오
    https://postcode.map.daum.net/guide

profile
개발자

0개의 댓글