主要製品

MyBatis

Includeする

  <select id="countById" resultType="_long">
       SELECT
           COUNT(DISTINCT A.id)
       <include refid="searchConditionFragment">
           <property name="condition" value="#{condition}"/>
       </include>
   </select>
   <sql id="searchConditionFragment">
       FROM
           Hoge A
   </sql>

In条件に展開する

       <if test="condition.prefecture != null and !condition.prefecture.isEmpty()">
       AND A.prefecture_id IN
       <foreach item="prefecture" collection="condition.prefecture" open="(" separator="," close=")">
           #{prefecture.id}
       </foreach>
       </if>

コールバック処理

ResultHandlerを使う。

Springbootで利用

Springbootとの連携

<mybatis:scan base-package="org.mybatis.spring.sample.mapper" />
@MapperScan("org.mybatis.spring.sample.mapper")

SQLファイル

   <sql id="searchConditionFragment">
       Select 
         *
       FROM
           TableA
   <if test="condition.someFlg != null and condition.someFlg">
       JOIN TableB  ON TableA.id = TableB.tablea_id
   </if>

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2022-10-14 (金) 13:16:53