DataSource 이용해 데이터베이스 연동하기

2022. 2. 5. 07:16·Back/JSP

∙ 어플리케이션 실행 시 미리 ConnedtionPool 객체를 생성한 후 데이터베이스와 연결을 맺는다.

∙ 어플리케이션은 데이터베이스 연동 작업 발생 시 이 ConnectionPool 객체를 이용해 작업한다.

 

커넥션풀(ConnectionPool) 동작과정

1) 톰캣 컨테이너를 실행한 후 응용 프로그램을 실행한다.

2) 톰캣 컨테이너 실행 시 ConnectionPool 객체를 생성한다.

3) 생성된 거넥션 객체는 DBMS와 연결한다.

4) 데이터베이스와 연동 작업이 필요할 경우 응용 프로그램은 ConnectionPool에서 제공하는 메소드를 호출하여 연동한다.

 

JNDI ( Java Naming and Directory Interface )

실제 웹 어플리케이션에서 ConnectionPoll 객체를 구현할 때는 Java SE에서 제공하는 javax.sql.Datasource 클래스를 이용한다.

 

JNDI란 필요한 자원을 키/값 쌍으로 저장한 후 필요할 때 키를 이용해 값을 얻는 방법이다.즉, 미리 접근할 자원에 키를 지정한 후 어플리케이션이 실행중일 때 이 키를 이용해 자원에 접근해서 작업하는 것

 

톰캣 컨테이너가 ConnectionPool 객체를 생성하면 이 객체에 대한 JNDI 이름(key)을 미리 설정해 놓는다.그러면 웹 어플리케이션에서 데이터베이스와 연동 작업을 할 때 이 JNDI 이름으로 접근하여 작업한다.


톰캣의 DataSource 설정 및 사용 방법

ConnectionPool 설정 과정

1) tomcat-dbcp 복붙하기

2) context.xml에 Resoucre 설정

    <Resource
    	name="jdbc/oracle"
    	auth="Container"
    	type="javax.sql.DataSource"
    	
    	driverClassName = "oracle.jdbc.OracleDriver"
    	url="jdbc:oracle:thin:@localhost:1521:xe"
    	username="scott"
    	password="tiger"
    	
    	maxActive="50"
    	maxWait="-1"
    />
저작자표시 (새창열림)

'Back > JSP' 카테고리의 다른 글

[JSP] MVC 디자인 패턴  (0) 2022.02.08
세션을 이용한 웹페이지 연동기능  (0) 2022.02.05
서블릿의 비즈니스 로직 처리 방법  (0) 2022.01.31
Port 8080 required by Tomcat v9.0 Server at localhost is already in use. 오류  (0) 2022.01.31
자바스크립트로 서블릿에 요청하기  (0) 2022.01.31
'Back/JSP' 카테고리의 다른 글
  • [JSP] MVC 디자인 패턴
  • 세션을 이용한 웹페이지 연동기능
  • 서블릿의 비즈니스 로직 처리 방법
  • Port 8080 required by Tomcat v9.0 Server at localhost is already in use. 오류
soyeon26
soyeon26
  • soyeon26
    개발 일지
    soyeon26
  • 전체
    오늘
    어제
    • 분류 전체보기 (107)
      • Web (22)
        • Web (1)
        • HTTP (0)
      • Language (29)
        • Java Script (3)
        • Type Srcipt (1)
        • Java (25)
      • Front (19)
        • HTML+CSS (4)
        • React (15)
      • Back (41)
        • Spring(Springboot) (9)
        • JSP (21)
        • Database (5)
        • NestJS (6)
      • Devops (6)
        • Docker (1)
        • Git & SVN (5)
      • App (7)
        • Android (7)
      • IT 정보 (3)
  • 블로그 메뉴

    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    프론트엔드
    SQL강의 추천
    Next.js
    React Next.js
    백엔드
    SSR
    과학기술인등록번호 조회
    강의 후기
    과학기술인번호 조회
    김영한
    csrvsssr
    인프런
    과학기술인 등록
    springboot
    데이터베이스 강의
    중복제거
    과학기술인 등록번호 발급
    자바스크립트set
    sql강의
    과학기술인 번호 발급
    스프링부트
    java의 정석
    React
    서블릿
    Next.js 필요성
    강의후기
    Spring
    csr과ssr의 차이
    javascript
    Java
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
soyeon26
DataSource 이용해 데이터베이스 연동하기
상단으로

티스토리툴바