ibatis動態語句中的prepend
關於ibatis動態sql的prepend的屬性,我們需要理解一下幾點
select * from student
<dynamic prepend="where">
<isNotNull property="id" prepend="and">
id = #id#
</isNotNull>
<isNotNull property="name" prepend="and">
name like '%$name$%'
</isNotNull>
</dynamic>
要點一 prepend是添加在動態語句的前麵
and是添加在id = #id#,同樣and是添加在name like '%$name$%'前麵
要點二 dynamic中首個prepend被忽略
按照要點一說法,語句select * from studnet and id = #id#就會出現問題了。其實若<isNotNull>寫在<dynamic>裏,且包含prepend,第一個isNotNull的prepend會被忽略。有的人會說,id不加prepend,變成<isNotNull property="id">?那就錯了,因為name前麵的and會被過濾掉了,會出錯。
要點三 明白了要點二,可以理解拚接語句中遇到的一些錯誤問題
最後更新:2017-04-02 15:15:03
上一篇:
ibatis中動態語句的iterate標簽
下一篇:
小米華為智能手機未來路不平坦
關於Java中的ServerSocket類與構造服務器的解析
阿裏雲成香港最大公共雲服務商,獲評"最佳公共雲服務商"
《第一本Docker書(修訂版)》——第2章 安裝Docker 2.1安裝Docker的先決條件
《iOS6 application development》學習之路:No.5: __bridge,NSTimer和圓角
大型分布式係統架構
嵌入式係統在物聯網行業中的應用
Ubuntu 11.04 下台式電腦通過已連接WIFI的Android手機上網
利用repeater綁定下載地址並點擊下載(避免中文文件名亂碼)
Asp.net中的Impact字體
Erlang簡史(翻譯)