クラス Query


  • public class Query
    extends java.lang.Object

    データベースに発行するクエリを表現するクラス

     EntityManager.createQuery(Criteria)でCriteria情報から作成する。
     データベースへの問合せの他、名前付きプレースホルダへの値のバインドメソッドも外部に提供する。
     
    • フィールドの概要

      フィールド 
      修飾子とタイプ フィールド 説明
      protected java.sql.Connection _connection
      コネクション
      protected java.lang.Class<?> _entityClass
      マッピングエンティティ
      protected java.util.List<java.util.Map<java.lang.String,​java.lang.Object>> _paramList
      バインドパラメータリスト
      protected java.sql.PreparedStatement _preparedStatement
      プリペアドステートメント
      protected QueryType _queryType
      クエリ種別
      protected java.sql.ResultSet _resultSet
      リザルトセット
      protected java.lang.String _sql
      発行SQL
    • コンストラクタの概要

      コンストラクタ 
      コンストラクタ 説明
      Query​(QueryType queryType, java.lang.String sql, java.lang.Class<?> entityClass, java.sql.Connection connection)
      コンストラクタ
    • メソッドの概要

      すべてのメソッド インスタンス・メソッド concreteメソッド 
      修飾子とタイプ メソッド 説明
      protected void bindParameter()
      パラメータバインド
      protected java.lang.String convertNamedPlaceholder​(java.lang.String sql)
      発行SQLの名前付きプレースホルダを「?」
      int executeUpdate()
      登録・更新・削除処理
      java.util.List<?> getResultList()
      検索結果リスト取得
      java.lang.Object getSingleResult()
      検索結果(1件)取得
      java.lang.String getSql()
      発行SQL取得
      protected java.util.List<?> selectQuery()
      検索メソッド
      void setParameter​(java.lang.String paramName, java.lang.Object value)
      SQLバインドパラメータ設定
      • クラスから継承されたメソッド java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • フィールドの詳細

      • _queryType

        protected QueryType _queryType
        クエリ種別
      • _sql

        protected java.lang.String _sql
        発行SQL
      • _paramList

        protected java.util.List<java.util.Map<java.lang.String,​java.lang.Object>> _paramList
        バインドパラメータリスト
      • _entityClass

        protected java.lang.Class<?> _entityClass
        マッピングエンティティ
      • _connection

        protected java.sql.Connection _connection
        コネクション
      • _preparedStatement

        protected java.sql.PreparedStatement _preparedStatement
        プリペアドステートメント
      • _resultSet

        protected java.sql.ResultSet _resultSet
        リザルトセット
    • コンストラクタの詳細

      • Query

        public Query​(QueryType queryType,
                     java.lang.String sql,
                     java.lang.Class<?> entityClass,
                     java.sql.Connection connection)

        コンストラクタ

        パラメータ:
        queryType - クエリ種別
        sql - 発行SQL
        entityClass - マッピングエンティティクラス
        connection - データベースコネクション
    • メソッドの詳細

      • getSingleResult

        public java.lang.Object getSingleResult()
                                         throws So4jException

        検索結果(1件)取得

         Criteriaの設定情報で生成したSQLを発行した検索結果を、エンティティにマッピングした最初の1件を返却する。
         
        戻り値:
        検索結果をエンティティにマッピングした1件データ      検索結果が0件の場合はnullを返却
        例外:
        So4jException - プリペアドステートメントの生成に失敗した場合
        パラメータのバインド処理に失敗した場合
        SQLの実行でエラーが発生した場合
        エンティティインスタンスフィールドに値を設定出来なかった場合
      • getResultList

        public java.util.List<?> getResultList()
                                        throws So4jException

        検索結果リスト取得

         Criteriaの設定情報で生成したSQLを発行した検索結果を、エンティティにマッピングしたリストを返却する。
         
        戻り値:
        検索結果をエンティティにマッピングしたリスト
        例外:
        So4jException - プリペアドステートメントの生成に失敗した場合
        パラメータのバインド処理に失敗した場合
        SQLの実行でエラーが発生した場合
        エンティティインスタンスフィールドに値を設定出来なかった場合
      • selectQuery

        protected java.util.List<?> selectQuery()
                                         throws So4jException

        検索メソッド

        戻り値:
        resultList 検索結果リスト
        例外:
        So4jException - プリペアドステートメントの生成に失敗した場合
        パラメータのバインド処理に失敗した場合
        SQLの実行でエラーが発生した場合
        エンティティインスタンスフィールドに値を設定出来なかった場合
      • executeUpdate

        public int executeUpdate()
                          throws So4jException

        登録・更新・削除処理

         Criteriaの設定情報で生成したSQLを実行し、その実行の登録・更新・削除件数を返却する。
         
        戻り値:
        登録・更新・削除件数
        例外:
        So4jException - プリペアドステートメントの生成に失敗した場合
        バインドパラメータの設定に失敗した場合
        SQLの実行でエラーが発生した場合
      • setParameter

        public void setParameter​(java.lang.String paramName,
                                 java.lang.Object value)

        SQLバインドパラメータ設定

         発行SQLのプレースホルダにバインドするパラメータを設定する。
         
        パラメータ:
        paramName - プレースホルダ名
        value - プレースホルダにバインドする値
      • convertNamedPlaceholder

        protected java.lang.String convertNamedPlaceholder​(java.lang.String sql)

        発行SQLの名前付きプレースホルダを「?」に変更

        パラメータ:
        sql - 発行SQL文(インスタンスフィールドを複製した文字列)
        戻り値:
        名前付きプレースホルダを「?」に変更したSQL文
      • bindParameter

        protected void bindParameter()
                              throws So4jException

        パラメータバインド

         setParameter(String, Object)で設定したパラメータをプレースホルダにバインドする。
         
        例外:
        So4jException - パラメータのバインドに失敗した場合
      • getSql

        public java.lang.String getSql()

        発行SQL取得

         データベースに発行するSQLを取得する。
         
        戻り値:
        SQL文