Estabelecer Conexão com o Oracle Autonomous AI Database Usando JDBC com IntelliJ

Você pode estabelecer uma conexão com o Oracle Autonomous AI Database usando o IDE do IntelliJ. As seções a seguir fornecem informações sobre como se conectar primeiro ao Oracle Autonomous AI Database usando um projeto Maven ou um projeto Gradle. Verifique se você concluiu as etapas descritas nos Pré-requisitos antes de estabelecer conexão com o Oracle Autonomous AI Database.

Pré-requisitos

As seções a seguir fornecem informações sobre as tarefas que você precisa executar antes de conectar suas aplicações Java ao Oracle Autonomous AI Database usando o driver JDBC da Oracle e o Universal Connection Pool. Consulte os pré-requisitos apropriados, dependendo do tipo de autenticação selecionado durante o provisionamento do Cluster de VMs do Autonomous Exadata (AVMC). Por padrão, conexões TLS unidirecionais são ativadas quando você provisiona um AVMC. Consulte Create an Autonomous Exadata VM Cluster para mais informações.

Você pode encontrar o tipo de autenticação na página Detalhes do seu AVMC. Consulte Exibir Detalhes de um Cluster da VM do Autonomous Exadata para obter instruções.

Provisionar uma Instância do Oracle Autonomous AI Database

Você precisa de acesso a um Oracle Autonomous AI Database. Consulte Antes de Começar a Usar o Autonomous AI Database na Infraestrutura Dedicada do Exadata se você ainda não tiver provisionado um.

Lembre-se da senha usada para o usuário ADMIN. Para fins de demonstração, usaremos o usuário ADMIN, mas nossa recomendação é criar outros usuários de banco de dados usando o Oracle SQL Developer ou o Database Actions.

Instalar o JDK 8

Faça download do JDK 8 mais recente ou de versões JDK mais altas.

Observação: certifique-se de usar o JDK8u162 ou uma versão posterior. Use java -version para verificar a versão do JDK que você instalou. Para verificar a versão do driver JDBC, digite java -jar ojdbc8.jar.

Baixe um programa de amostra do Github

  1. Faça download do arquivo ADBQuickStart.java no Github. Este aplicativo de amostra usa o esquema de amostra do Histórico de Vendas (SH) e exibe 20 registros da tabela SH.CUSTOMERS.

  2. Modifique o arquivo ADBQuickStart.java para incluir suas informações de conexão do Oracle Autonomous AI Database:

    • DB_USER: Você pode usar ADMIN, o usuário criado por padrão quando o Oracle Autonomous AI Database é criado (se você criar outro usuário do OracleAutonomous AI Database, poderá usar esse usuário).

    • DB_PASSWORD: Use a senha do usuário do banco de dados. Se você estiver se conectando como o usuário ADMIN, defina essa senha com a senha escolhida durante a etapa Criar Autonomous AI Database ao provisionar o Oracle Autonomous AI Database. Por motivos de segurança, você precisa informar a senha por meio do console ao executar o exemplo.

    • DB_URL: Obtenha a string de conexão do seu Autonomous AI Database seguindo as instruções em Exibir Strings de Conexão de um Autonomous AI Database. Se você estiver usando diretamente no programa Java, precisará fazer escape de " na string de conexão com \

    Um exemplo de arquivo Java de início rápido tem esta aparência:

    DB_URL = "jdbc:oracle:thin:@jdbc:oracle:thin:@(description=
          (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1521)(host=adb.us-sanjose-1.oraclecloud.com))(connect_data=(service_name=g13ec47eade81f7_demodb_low.adb.oraclecloud.com))(security=(ssl_server_cert_dn="CN=adb.us-sanjose-1.oraclecloud.com,
          OU=Oracle ADB SANJOSE, O=Oracle Corporation, L=Redwood City, ST=California,
          C=US")))"
    DB_USER="ADMIN" and DB_PASSWORD="your_password"
  3. Salve as alterações no arquivo ADBQuickStart.java.

Diagnosticando e Solucionando Problemas e Depurando: Se você encontrar algum erro, consulte a página Dicas de Solução de Problemas para obter algumas dicas úteis.

Provisionar uma Instância do Oracle Autonomous AI Database

Você precisa de acesso a um Oracle Autonomous AI Database. Consulte Antes de Começar a Usar o Autonomous AI Database na Infraestrutura Dedicada do Exadata se você ainda não tiver provisionado um.

Lembre-se da senha usada para o usuário ADMIN. Para fins de demonstração, usaremos o usuário ADMIN, mas nossa recomendação é criar outros usuários de banco de dados usando o Oracle SQL Developer ou o Database Actions.

Obter Credenciais do Cliente

  1. Faça download de um arquivo da wallet da instância do Autonomous AI Database para obter um arquivo zip que contenha as credenciais de segurança do cliente e as definições de configuração de rede necessárias para acessar uma instância do Autonomous AI Database.

    Obtenha as credenciais de segurança do cliente (arquivo wallet.zip):

    • Usuário ADMIN: Na Console do Oracle Cloud Infrastructure, clique em Conexão do banco de dados. Consulte Fazer Download das Credenciais do Cliente.

    • Outro usuário (não administrador): Obtenha o Oracle Wallet do administrador da sua instância do Autonomous AI Database.

    Observação: proteja o arquivo wallet.zip e seu conteúdo para impedir o acesso não autorizado ao banco de dados.

  2. Descompacte o arquivo de credenciais do cliente (wallet.zip).

Instalar o JDK 8

Faça download do JDK 8 mais recente ou de versões JDK mais altas.

Observação: certifique-se de usar o JDK8u162 ou uma versão posterior. Use java -version para verificar a versão do JDK que você instalou. Para verificar a versão do driver JDBC, digite java -jar ojdbc8.jar.

Baixe um programa de amostra do Github

  1. Faça download do arquivo ADBQuickStart.java no Github. Este aplicativo de amostra usa o esquema de amostra do Histórico de Vendas (SH) e exibe 20 registros da tabela SH.CUSTOMERS.

  2. Modifique o arquivo ADBQuickStart.java para incluir suas informações de conexão do Oracle Autonomous AI Database:

    • DB_USER: Você pode usar ADMIN, o usuário criado por padrão quando o Oracle Autonomous AI Database é criado (se você criar outro usuário do OracleAutonomous AI Database, poderá usar esse usuário).

    • DB_PASSWORD: Use a senha do usuário do banco de dados. Se você estiver se conectando como o usuário ADMIN, defina essa senha com a senha escolhida durante a etapa Criar Autonomous AI Database ao provisionar o Oracle Autonomous AI Database. Por motivos de segurança, você precisa informar a senha por meio do console ao executar a amostra.

    • DB_URL: Informe o nome do serviço de rede (Alias TNS) DBName_medium em que DBName é o Nome do Oracle Autonomous AI Database informado durante a etapa Criar Autonomous AI Database ao provisionar o Oracle Autonomous AI Database. Os nomes de serviço de rede disponíveis podem ser vistos no arquivo tnsnames.ora, que faz parte do arquivo zip de credenciais do cliente.

      TNS_ADMIN deve apontar para o local em que você descompactou as credenciais do cliente do Oracle Autonomous AI Database.

    Um exemplo de arquivo Java de início rápido tem esta aparência:

    DB_URL = "jdbc:oracle:thin:@DBName_medium?TNS_ADMIN=/Users/test/wallet_DBName" DB_USER="ADMIN" and DB_PASSWORD="enter_it_from_console"
  3. Salve as alterações no arquivo ADBQuickStart.java.

Procedimento

Você pode se conectar ao Autonomous AI Database usando o IntelliJ e o Maven ou o Gradle.

  1. Crie um projeto Maven.

    1. Clique no menu Arquivo, selecione Novo e Projeto.

    2. Selecione Maven no lado esquerdo e selecione a versão mais recente do JDK como Project SDK.

    3. Clique em Próximo.

    4. Atribua Name como ADBQuickstart.

  2. Crie o arquivo ADBQuickStart.java.

    1. Clique com o botão direito do mouse em src/main/java.

    2. Selecione Novo e Classe Java

    3. Informe com.oracle.jdbctest.ADBQuickStart.java. Isso também criará a estrutura de pacote necessária. Certifique-se de copiar o conteúdo do arquivo ADBQuickstart.java para este novo arquivo.

  3. Modifique o arquivo pom.xml com as seguintes alterações: Adicione o Driver JDBC da Oracle como uma dependência.

    O ojdbc8-production fará download do driver JDBC da Oracle (ojdbc8.jar) juntamente com o ucp.jar (obrigatório para usar o UCP como pool de conexões do cliente), oraclepki.jar, osdt_core.jar, osdt_cert.jar. Esses JARs são necessários para usar as Oracle Wallets ao estabelecer conexão com o Oracle Autonomous AI Database.

    <properties>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>
    </properties>
    <dependencies>
      <dependency>
        <groupId>com.oracle.database.jdbc</groupId>
        <artifactId>ojdbc8-production</artifactId>
        <version>19.18.0.0</version>
        <type>pom</type>
      </dependency>
    </dependencies>
  4. Criar e executar um Recurso ADB QuickStart. Compile o código Java clicando com o botão direito do mouse em ADBQuickStart.java e, em seguida, clique em Criar Módulo ADBQuickStart. Certifique-se de não ter nenhum erro de compilação no código Java e de estar usando a versão mais recente do JDK.

  5. Execute o programa Java de amostra. Clique com o botão direito do mouse em ADBQuickStart.java e depois clique em Run ADBQuickStart.main(). Certifique-se de informar a senha do banco de dados na console.

    Saída de Amostra:

    As linhas consultadas juntamente com uma mensagem de êxito são exibidas, conforme mostrado na seguinte tela:

    Descrição da ilustração intellij_build_and_run.png

    Observação: Se você se conectar ao Oracle Autonomous AI Database por trás de um firewall, provavelmente encontrará um erro de timeout de conexão. Certifique-se de estar fora do firewall ao executar essa amostra ou atualize o arquivo tnsnames.ora para usar um proxy HTTPS.

  1. Siga as instruções do Gradle Guide para instruções de download e compilação do Gradle e defina a variável PATH antes de usar os comandos Gradle. Como primeira etapa, crie um projeto Gradle usando o comando a seguir. Certifique-se de escolher 2:application para Selecionar tipo de projeto a ser gerado. Além disso, para Pacote de origem (default:temp): use com.oracle.jdbctest.

    gradle init
  2. Copie o arquivo ADBQuickStart.java para o diretório src/main/java/com/oracle/jdbctest.

  3. Modifique o arquivo build.gradle com as seguintes alterações:
    • Adicione mavenCentral() como um repositório.
    • Adicione o driver JDBC da Oracle como uma dependência.

    Observação: a produção ojdbc8 faz download do driver Oracle JDBC (ojdbc8.jar) junto com ucp.jar (obrigatório para usar o UCP como um pool de conexões do cliente), oraclepki.jar, osdt_core.jar, osdt_cert.jar. Esses JARs são necessários para usar as Oracle Wallets ao estabelecer conexão com o Oracle Autonomous AI Database.

    Para obter informações adicionais, consulte Guia Central do Maven.

    • Atualize o mainClassName para ADBQuickStart.

    • Adicione um bloco run para ler a senha do console.

       repositories {
         // Maven Central
          mavenCentral()
        }
       dependencies {
         // Get the 19.18.0.0 Oracle JDBC driver along with other companion jars
         implementation("com.oracle.database.jdbc:ojdbc8-production:19.18.0.0")
        }
       application {
         // Define the main class for the application
         mainClassName ='{your_project_directory}.ADBQuickStart'
       }
       // To pause to read the password from console
       run {
         standardInput = System.in
       }
  4. Criar um aplicativo Gradle. Verifique se você está no diretório onde o arquivo build.gradle está presente. Compile o código Java usando o seguinte comando:

    ./gradlew build
  5. Execute o programa Java de amostra.

    ./gradlew run

    Exemplo de Saída: As linhas consultadas juntamente com uma mensagem de êxito são exibidas, conforme mostrado na seguinte tela:

    Veja a seguir a descrição da ilustração gradle_build_and_run.png

    Descrição da ilustração gradle_build_and_run.png

    Observação: Se você se conectar ao Oracle Autonomous AI Database por trás de um firewall, provavelmente encontrará um erro de timeout de conexão. Certifique-se de estar fora do firewall ao executar essa amostra ou atualize o arquivo tnsnames.ora para usar um proxy HTTPS.