之前這個(gè)動(dòng)態(tài)sql一直沒有效果,
<statement id="searchBookByName" parameterClass="book" resultClass="book">
SELECT * FROM book
<dynamic prepend="where">
<isNotNull>
name like #name#
</isNotNull>
</dynamic>
</statement>
測試時(shí)我把book的name設(shè)為null,用p6spy查看輸出的sql為:
SELECT * FROM book where name like ''
后來在官方文檔上看到“property - 被比較的屬性(必選)”,于是改成
<statement id="searchBookByName" parameterClass="book" resultClass="book">
SELECT * FROM book
<dynamic prepend="where">
<isNotNull propety="name">
name like #name#
</isNotNull>
</dynamic>
</statement>
果然正常了。
ps:如果在dtd中有這個(gè)檢查或者ibatis解析這樣的xml會(huì)報(bào)錯(cuò),我就不用疑惑兩天了。
特此為記!