Java 애플리케이션 구축

Autonomous Database에 액세스하는 Java 애플리케이션을 구축하려면 먼저 Autonomous Database의 지속적인 가용성 및 고성능 기능을 활용할 수 있는 데이터베이스 액세스를 지원하도록 개발 시스템을 구성합니다.

데이터베이스 액세스를 지원하도록 개발 시스템을 구성한 후에는 응용 프로그램에서 데이터베이스 연결 및 SQL 문을 코딩하여 지속적인 가용성 및 고성능 기능을 활용합니다.

참고:

다음 항목을 읽는 대신 "체험해보기"를 위해 Oracle Autonomous Database Dedicated for Developers and Database Users WorkshopLab 5: Build Java Application Stacks를 살펴볼 수 있습니다.

Java 개발 시스템 구성

Java 애플리케이션이 Autonomous Database의 지속적인 가용성 및 고성능 기능을 활용할 수 있도록 개발 시스템을 구성하려면 다음 단계를 수행합니다.

  1. JDK(Java Development Kit)를 다운로드하여 설치합니다.
  2. Autonomous Database에 대한 클라이언트 인증서를 다운로드합니다.
  3. Oracle JDBC(Java 데이터베이스 접속) 드라이버를 가져옵니다.

시작하기 전에

성공적으로 구성하려면 개발 시스템이 특정 기준을 충족해야 합니다.

JDK 다운로드 및 설치

Java SE Downloads 페이지로 이동합니다. 그런 다음 페이지의 지침에 따라 JDK 8u221 이상을 다운로드하여 설치합니다.

Autonomous Database에 대한 클라이언트 인증서 다운로드

  1. 데이터베이스에 대한 클라이언트 인증서가 포함된 zip 파일을 컴퓨터의 보안 디렉토리에 다운로드합니다.

    이 zip 파일은 Oracle Cloud 콘솔의 데이터베이스 세부정보 페이지에서 다운로드할 수 있습니다. 이 페이지에 액세스할 수 있도록 허용하는 Oracle Cloud 사용자 계정이 있으면 다음과 같이 인증서를 다운로드하십시오. 해당 계정이 없는 경우 zip 파일을 보호하는 데 사용된 비밀번호와 함께 데이터베이스 관리자로부터 zip 파일을 가져와야 합니다.

    1. 웹 브라우저에서 Oracle Cloud에 사인인하고 Autonomous Database에 대한 세부정보 페이지로 이동합니다.

    2. DB 연결을 누릅니다.

    3. 데이터베이스 접속 페이지에서 다운로드를 누릅니다.

    4. 전자 지갑 다운로드 대화상자의 암호 필드에 비밀번호를 입력하고 암호 확인 필드에서 비밀번호를 확인합니다.

      비밀번호는 길이가 8자 이상이어야 하며 하나 이상의 문자 및 하나 이상의 숫자 또는 하나 이상의 특수 문자를 포함해야 합니다.

    5. 다운로드를 누르고 압축을 풀어 클라이언트 인증서 zip 파일을 보안 디렉토리에 저장합니다.

Oracle JDBC 드라이버 가져오기

Oracle Technical Resources의 Maven Central 또는 JDBC 다운로드 페이지에서 Oracle JDBC 드라이버 버전 19.6.0.0 이상을 가져옵니다. 관련 비디오 및 기타 리소스는 Oracle Technologies JDBC 홈 페이지를 참조하십시오.

Maven Central에서 JDBC 드라이버를 가져오려면 다음 단계를 수행합니다.

  1. Central Maven 저장소에서 Oracle JDBC 드라이버를 가져옵니다.

    드라이버 Maven 종속성 GAV(GroupID, ArtifactID, VersionID)를 제공하여 ojdbc8.jaroraclepki.jar, osdt_core.jarosdt_cert.jar과 같은 다른 jar와 함께 가져옵니다. Maven Central Guide를 참조하십시오.

    ojdbc8.jar 버전 19.6.0.0의 경우 다음 GAV를 제공합니다.

    <groupId>com.oracle.database.jdbc</groupId>
    <artifactId>ojdbc8</artifactId>
    <version>19.7.0.0</version>

    ojdbc8.jar 버전 19.7.0.0의 경우 다음 GAV를 제공합니다.

    
    <groupId>com.oracle.database.jdbc</groupId>
    <artifactId>ojdbc8-production</artifactId>
    <version>19.7.0.0</version>
    <type>POM</type>

Oracle Technical Resources에서 JDBC 드라이버를 가져오려면 다음 단계를 수행하십시오.

  1. Oracle JDBC 다운로드 페이지로 이동합니다. 그런 다음 최신 버전의 드라이버를 선택하여 해당 버전별 다운로드 페이지로 이동합니다.

  2. JDBC 드라이버를 배치할 디렉토리에 이 아카이브를 다운로드하고 압축을 풉니다. ojdbc8-full.tar.gz.

  3. 연결 URL을 Autonomous Database로 지정합니다.

    연결 URL에 TNS_ADMIN를 추가하고 해당 값을 클라이언트 인증서의 압축을 푼 디렉토리의 전체 경로로 설정합니다. 예:

    // Use TNS alias name plus TNS_ADMIN with JDBC driver 18.3 or higher
    DB_URL="jdbc:oracle:thin:@wallet_dbname?
    TNS_ADMIN=/Users/test/wallet_dbname";
    
    // For Microsoft Windows, use this for TNS_ADMIN:
    // TNS_ADMIN=C:\\Users\\test\\wallet_dbname”;
  4. 압축이 풀린 다음 JAR 파일의 경로를 Java 프로그램을 컴파일하고 실행할 때 사용하는 CLASSPATH 환경 변수에 추가합니다.

    DataSourceSample.java 또는 UCPSample.java을 사용하여 Autonomous Database에 대한 접속을 확인합니다.

    • ojdbc8.jar: 코어 JDBC 드라이버
    • oraclepki.jar, osdt_core.jarosdt_cert.jar: 전자 지갑 기반 인증을 사용하는 Autonomous Database의 경우
    • ucp.jar: UCP(Universal Connection Pooling)의 경우
    • ons.jarsimplefan.jar: FAN(Fast Application Notification) 지원용

코드 데이터베이스 연결 및 SQL 문

Autonomous Database에 대한 Java 애플리케이션 접속을 지원하도록 개발 시스템을 구성한 후 다음 지침에 따라 데이터베이스에 대한 애플리케이션 접속의 고성능 및 지속적인 가용성을 달성합니다.

예:

import java.sql.Connection;
import javax.sql.PooledConnection;
import oracle.jdbc.OracleConnection;
import oracle.jdbc.replay.OracleDataSourceFactory;
import oracle.jdbc.replay.OracleDataSource;
import oracle.jdbc.replay.OracleConnectionPoolDataSource;
...
  PoolDataSource pds = PoolDataSourceFactory.getPoolDataSource();
  // Set the connection factory first before all other properties
  pds.setConnectionFactoryClassName(
    "oracle.jdbc.replay.OracleConnectionPoolDataSourceImpl");
  pds.setFastConnectionFailoverEnabled(true);
  pds.setURL("jdbc:oracle:thin:@tp_tls?TNS_ADMIN=/users/jdoe/adbcredentials");
  pds.setUser("appuser");
  pds.setPassword("<password>");
  pds.setConnectionPoolName("JDBC_UCP_POOL");

  Connection conn = pds.getConnection();

추가 리소스

Oracle Database JDBC 드라이버에 대한 자세한 내용은 다음을 참조하십시오.
Universal Connection Pool에 대한 자세한 내용은 다음을 참조하십시오.