REST風サービスをJavaEEで構築する方法13(SQLログ編)
今回はEntityManagerで実行したSQLをログに出力する方法を紹介する。
REST風サービスをJavaEEで構築する方法09(DB接続設定編)で生成した「persistence.xml」を編集する。
プロジェクトツリー上の[構成ファイル]>[persistence.xml]をダブルクリックしてファイルを開き、上部の【ソース】ボタンを押下する。
表示されたxmlファイルの「properties」タグに下記の2行を追加する。
<property name="eclipselink.logging.level.sql" value="FINE"/> <property name="eclipselink.logging.parameters" value="true"/>
※「properties」タグが存在しない場合は追加する
追加した結果、「persistence.xml」ファイルが下記の様な状態であることを確認する。
<?xml version="1.0" encoding="UTF-8"?> <persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"> <persistence-unit name="SampleRestPU" transaction-type="JTA"> <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> <jta-data-source>jdbc/sample_db</jta-data-source> <exclude-unlisted-classes>false</exclude-unlisted-classes> <validation-mode>NONE</validation-mode> <properties> <property name="eclipselink.logging.level.sql" value="FINE"/> <property name="eclipselink.logging.parameters" value="true"/> </properties> </persistence-unit> </persistence>
<動作確認>
プロジェクトを実行し、DBに対してSQLが発行される様な処理を実行する。
NetBeansの「出力」タブの「GlassFish Server 4.1」タブに、実行されたSQLとSQL中の変数にバインドされた値が出力される。
普通: select s.ID, d.DETAIL_ID, s.NAME, d.REMARKS from SAMPLE_TBL s, SAMPLE_DETAIL_TBL d where s.ID = d.ID and d.REMARKS = ? and d.DETAIL_ID = ? order by s.ID, d.DETAIL_ID; bind => [LMNOPQRSTUV, 02]
Enjoy Programing!!
<関連記事>
・REST風サービスをJavaEEで構築する方法01(導入編)
・REST風サービスをJavaEEで構築する方法02(雛形プロジェクト編)
・REST風サービスをJavaEEで構築する方法03(RESTクライアント編)
・REST風サービスをJavaEEで構築する方法04(各メソッド編)
・REST風サービスをJavaEEで構築する方法05(パラメータの受け取り編)
・REST風サービスをJavaEEで構築する方法06(JSON返却編1)
・REST風サービスをJavaEEで構築する方法07(JSON返却編2)
・REST風サービスをJavaEEで構築する方法08(Logic層編)
・REST風サービスをJavaEEで構築する方法09(DB接続設定編)
・REST風サービスをJavaEEで構築する方法10(DAO層編1)
・REST風サービスをJavaEEで構築する方法11(DAO層編2)
・REST風サービスをJavaEEで構築する方法12(DAO層編3)
・REST風サービスをJavaEEで構築する方法13(SQLログ編)[本記事]
<お勧め書籍>