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」タブに、実行されたSQLSQL中の変数にバインドされた値が出力される。

普通:   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ログ編)[本記事]


<お勧め書籍>

わかりやすいJavaEEウェブシステム入門
JavaEEに関して基本的なことが分かり易く記述されている。
JavaEEに関する最初の1冊としてお勧めである。
Beginning Java EE 6 GlassFish 3で始めるエンタープライズJava
「金魚本」の愛称を持つJavaEEの教科書的な書籍である。
JavaEEを腰を据えて学びたい人にお勧めする1冊!!