2

CRUD操作を使用してアクセスできるグラスフィッシュコンテナ管理のダービーデータベースがあります。asadmin ツールを使用して derby データベースに直接アクセスし、テーブルを表示したいと考えています。

ただし、データベースが見つかりません。

このサイトを調査したところ、必要な場合にのみ接続する接続プールが Glassfish によって作成されることがわかりました。接続プールを作成することは可能ですが、データベースがどこにあるかさえわかりません。

どんなアドバイスでも大歓迎です。私は JEE7 を初めて使用し、「JEE7 初心者向け」の本から学んでいます。

<persistence-unit name="chapter15PU" transaction-type="JTA">
    <jta-data-source>jdbc/__default</jta-data-source>
    <properties>
        <property name="javax.persistence.schema-generation.database.action" value="drop-and-    create"/>
        <property name="eclipselink.logging.level" value="INFO"/>
    </properties>
</persistence-unit>
4

2 に答える 2

3

derby ij コマンド ライン ツールを使用して接続するには、次のコマンドを使用します。

connect 'jdbc:derby://localhost:1527/sun-appserv-samples';

「sun-appserv-samples」は、Glassfish コンテナが管理するデフォルトのデータベース名です。

次のように;

domain.xml ファイルに関する Oracle ドキュメント

データベースがコンテナー管理されるように指定し、Glassfish を使用している場合、すべてのデータベース プロパティは domain.xml ファイルで見つけることができます。

たとえば、domain1 という名前のデフォルトの glassfish ドメインを使用している場合、ファイル システムの ..glassfish/domains/domain1 に移動する必要があります。domain.xml ファイルは config フォルダーにあります。

ここでは、すべてのデータベース プロパティの詳細を示す次の情報を見つけることができます。

<property name="PortNumber" value="1527"></property>
<property name="Password" value="APP"></property>
<property name="User" value="APP"></property>
<property name="serverName" value="localhost"></property>
<property name="DatabaseName" value="sun-appserv-samples"></property>
<property name="connectionAttributes" value=";create=true"></property>

ご覧のとおり、デフォルトのデータベース名は sun-appserv-samples です。

このデータベースに接続するには、derby bin フォルダーにあるコマンド ツール ij を開く必要があります。次に、次のコマンドを使用してデータベースに接続します。

connect 'jdbc:derby://localhost:1527/sun-appserv-samples';

注: derby を実行している必要があり、最初に Java Web アプリケーションを Glassfish にデプロイします。

于 2014-07-22T12:16:01.480 に答える
0

インメモリの derby データベースに直接アクセスできるかどうかはわかりません。

于 2014-07-16T12:38:36.773 に答える