例えば、私は方法ISLEAPYEAR(int型の年を)持っているcom.wts.test.DateUtil、のようなツールを持っている、うるう年特定の年かどうかを決定するために使用。そして、選択マッパーにするかどうか閏年に応じて、異なるクエリを実行します。このようなことができる何か:
<if test="@com.wts.test.DateUtil@isLeapYear(year)==true">
select * from tableA
</if> <if test="@com.wts.test.DateUtil@isLeapYear(year)==false"> select * from tableB </if>
あなたは定数を使用している場合は、定数やクラス定数Constant.CURRENT_YEARがあることが前提とされています。
<if test=year==@com.wts.test.Consant@CURRENT_YEAR> select * from tableC </if>
SQLで:
静的メソッドを使用します。
<select id='testSelectA' .....> select * from tableA where year=${@com.wts.test.DateUtil@getYear()} </select>
静的定数を使用します:
<select id='testSelectB' .....> select * from tableA where year=${@com.wts.test.Constant@CURRENT_YEAR} </select>