sql >> データベース >  >> RDS >> Oracle

OracleWallet認証を使用してSpring-jdbcからOracleDBに接続します

    「単純なアプリケーションテスト」とおっしゃっていたので、単体テストを構成する必要があると思います。単体テスト構成クラス(たとえば、class TestSpringWebConfig extends SpringWebConfig )これにより、ウォレットを使用してOracleデータソースを取得できます(ボーナス:以下はプロキシデータベースアカウントを使用します):

    System.setProperty("oracle.net.tns_admin", "path/to/your/tnsnames");
    
    OracleDataSource ds = new OracleDataSource();
    
    Properties props = new Properties();
    props.put("oracle.net.wallet_location", "(source=(method=file)(method_data=(directory=path/to/your/wallet)))");
    
    /*
      Use the following only if you have a proxy user database account instead of a normal DB account
      A test user's username could go here though
    */
    props.put(OracleConnection.CONNECTION_PROPERTY_PROXY_CLIENT_NAME, "proxy-user-name"); 
    
    ds.setConnectionProperties( props );
    ds.setURL("jdbc:oracle:thin:/@dbAlias"); //dbAlias should match what's in your tnsnames
    
    return ds;
    

    これは、JDKに次のものがあることも前提としています。

    JAVA_HOME / jre / lib / security / java.securityで、「プロバイダーのリスト」に以下を追加します。

    security.provider.11=oracle.security.pki.OraclePKIProvider
    

    そして、OracleからJAVA_HOME / jre / lib/extに次のjarを追加します。

    • osdt_cert.jar
    • osdt_core.jar
    • oraclepki.jar

    そしてもちろん、上記のすべては、ojdbc7jarがすでにアプリケーションのクラスパスにあることを前提としています。




    1. SQLServerでの照合

    2. 一定の間隔での明確なランダム時間の生成

    3. 行を削除するMySQLのデッドロック

    4. psqlで、CTEを使用してSelectクエリのループを実行し、読み取り専用データベースで実行した場合に表示される出力を取得する方法は?