<select id="SelectEemployee" parameterClass="string" resultMap = "employee-result">

           select * from employee

//動態SQL語句

            <dynamic prepend="WHERE">

               <isParameterPresent>

                     emp_id = #value#

               </isParameterPresent>

            </dynamic>

       </select>

    </statements>

</sqlMap>     

/*動態SQL的寫法:

開始 <dynamic

條件成立時前面要加的字符串 prepend ="字符串">

<屬性關鍵字 (見下表)

prepend="字符串"

判斷條件的對象屬性名 property="字符串"

如果是屬性關鍵字是比較條件時,字符串存放要比較的值compareValue="字符串">

要顯示的條件名

</屬性關鍵字>

結束</dynamic>

*/

/*動態SQL的參數有

屬性關鍵字

含義

<isEqual>

如果參數相等于值則查詢條件有效。

<isNotEqual>

如果參數不等于值則查詢條件有效。

<isGreaterThan>

如果參數大于值則查詢條件有效。

<isGreaterEqual>

如果參數等于值則查詢條件有效。

<isLessEqual>

如果參數小于值則查詢條件有效。如下所示:

<isLessEqual prepend = ”AND” property = ”age” compareValue = ”18” >

ADOLESCENT = ‘TRUE’

</isLessEqual>

<isPropertyAvailable>

如果參數有使用則查詢條件有效。

<isNotPropertyAvailable>

如果參數沒有使用則查詢條件有效。

<isNull>

如果參數為NULL則查詢條件有效。

<isNotNull>

如果參數不為NULL則查詢條件有效。

<isEmpty>

如果參數為空則查詢條件有效。

<isNotEmpty>

如果參數不為空則查詢條件有效。參數的數據類型為CollectionString 時參數不為NULL或“”。如下所示:

<isNotEmpty prepend=”AND” property=”firstName” >

FIRST_NAME=#firstName#

</isNotEmpty>

<isParameterPresent>

如果參數類不為NULL則查詢條件有效。

<isNotParameterPresent>

Checks to see if the parameter object is not present (null). Example Usage:

<isNotParameterPresent prepend=”AND”>

EMPLOYEE_TYPE = ‘DEFAULT’

</isNotParameterPresent>