Java 애플리케이션 구축
Autonomous Database에 액세스하는 Java 애플리케이션을 구축하려면 먼저 Autonomous Database의 지속적인 가용성 및 고성능 기능을 활용할 수 있는 데이터베이스 액세스를 지원하도록 개발 시스템을 구성합니다.
데이터베이스 액세스를 지원하도록 개발 시스템을 구성한 후에는 응용 프로그램에서 데이터베이스 연결 및 SQL 문을 코딩하여 지속적인 가용성 및 고성능 기능을 활용합니다.
참고:
다음 항목을 읽는 대신 "체험해보기"를 위해 Oracle Autonomous Database Dedicated for Developers and Database Users Workshop의 Lab 5: Build Java Application Stacks를 살펴볼 수 있습니다.관련 항목
Java 개발 시스템 구성
Java 애플리케이션이 Autonomous Database의 지속적인 가용성 및 고성능 기능을 활용할 수 있도록 개발 시스템을 구성하려면 다음 단계를 수행합니다.
- JDK(Java Development Kit)를 다운로드하여 설치합니다.
- Autonomous Database에 대한 클라이언트 인증서를 다운로드합니다.
- Oracle JDBC(Java 데이터베이스 접속) 드라이버를 가져옵니다.
시작하기 전에
성공적으로 구성하려면 개발 시스템이 특정 기준을 충족해야 합니다.
-
인터넷 접속이 있어야 합니다.
-
Autonomous Database에 대한 네트워크 액세스 권한이 있어야 합니다.
개발 시스템이 이 요구사항을 충족하는지 확인하는 방법은 데이터베이스에 액세스하도록 개발 시스템 구성을 참조하십시오.
JDK 다운로드 및 설치
Java SE Downloads 페이지로 이동합니다. 그런 다음 페이지의 지침에 따라 JDK 8u221 이상을 다운로드하여 설치합니다.
Autonomous Database에 대한 클라이언트 인증서 다운로드
-
데이터베이스에 대한 클라이언트 인증서가 포함된 zip 파일을 컴퓨터의 보안 디렉토리에 다운로드합니다.
이 zip 파일은 Oracle Cloud 콘솔의 데이터베이스 세부정보 페이지에서 다운로드할 수 있습니다. 이 페이지에 액세스할 수 있도록 허용하는 Oracle Cloud 사용자 계정이 있으면 다음과 같이 인증서를 다운로드하십시오. 해당 계정이 없는 경우 zip 파일을 보호하는 데 사용된 비밀번호와 함께 데이터베이스 관리자로부터 zip 파일을 가져와야 합니다.
-
웹 브라우저에서 Oracle Cloud에 사인인하고 Autonomous Database에 대한 세부정보 페이지로 이동합니다.
-
DB 연결을 누릅니다.
-
데이터베이스 접속 페이지에서 다운로드를 누릅니다.
-
전자 지갑 다운로드 대화상자의 암호 필드에 비밀번호를 입력하고 암호 확인 필드에서 비밀번호를 확인합니다.
비밀번호는 길이가 8자 이상이어야 하며 하나 이상의 문자 및 하나 이상의 숫자 또는 하나 이상의 특수 문자를 포함해야 합니다.
-
다운로드를 누르고 압축을 풀어 클라이언트 인증서 zip 파일을 보안 디렉토리에 저장합니다.
-
Oracle JDBC 드라이버 가져오기
Oracle Technical Resources의 Maven Central 또는 JDBC 다운로드 페이지에서 Oracle JDBC 드라이버 버전 19.6.0.0 이상을 가져옵니다. 관련 비디오 및 기타 리소스는 Oracle Technologies JDBC 홈 페이지를 참조하십시오.
Maven Central에서 JDBC 드라이버를 가져오려면 다음 단계를 수행합니다.
-
Central Maven 저장소에서 Oracle JDBC 드라이버를 가져옵니다.
드라이버 Maven 종속성 GAV(GroupID, ArtifactID, VersionID)를 제공하여
ojdbc8.jar
를oraclepki.jar
,osdt_core.jar
및osdt_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 드라이버를 가져오려면 다음 단계를 수행하십시오.
-
Oracle JDBC 다운로드 페이지로 이동합니다. 그런 다음 최신 버전의 드라이버를 선택하여 해당 버전별 다운로드 페이지로 이동합니다.
-
JDBC 드라이버를 배치할 디렉토리에 이 아카이브를 다운로드하고 압축을 풉니다.
ojdbc8-full.tar.gz
. -
연결 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”;
-
압축이 풀린 다음 JAR 파일의 경로를 Java 프로그램을 컴파일하고 실행할 때 사용하는
CLASSPATH
환경 변수에 추가합니다.DataSourceSample.java 또는 UCPSample.java을 사용하여 Autonomous Database에 대한 접속을 확인합니다.
ojdbc8.jar
: 코어 JDBC 드라이버oraclepki.jar
,osdt_core.jar
및osdt_cert.jar
: 전자 지갑 기반 인증을 사용하는 Autonomous Database의 경우ucp.jar
: UCP(Universal Connection Pooling)의 경우ons.jar
및simplefan.jar
: FAN(Fast Application Notification) 지원용
코드 데이터베이스 연결 및 SQL 문
Autonomous Database에 대한 Java 애플리케이션 접속을 지원하도록 개발 시스템을 구성한 후 다음 지침에 따라 데이터베이스에 대한 애플리케이션 접속의 고성능 및 지속적인 가용성을 달성합니다.
- 접속 풀 사용.
- FAN 사용(빠른 응용 프로그램 통지).
- 수행할 작업과 가장 잘 일치하는 미리 정의된 데이터베이스 서비스를 사용합니다. 미리 정의된 데이터베이스 서비스에 대한 자세한 내용은 자율운영 데이터베이스에 대해 미리 정의된 데이터베이스 서비스 이름을 참조하십시오.
예:
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 19c JDBC Developer's Guide 또는 Oracle Database 23ai JDBC Developer's Guide의 Introducing JDBC
- Oracle Database 19c JDBC Developer's Guide 또는 Oracle Database 23ai JDBC Developer's Guide의 Oracle Database JDBC Java API Reference
- Oracle Database 19c Universal Connection Pool Developer's Guide 또는 Oracle Database 23ai Universal Connection Pool Developer's Guide의 Introduction to UCP
- Oracle Universal Connection Pool API Reference - Oracle Database 19c Universal Connection Pool Java API Reference 또는 Oracle Database 23ai Universal Connection Pool Java API Reference