dynamic可以去除第一个prepend="and"中的字符(这里为and),从而可以帮助你实现一些很实用的功能。具体情况如下:
1.使用dynamic
1.1 xmlselect * from Person表 <dynamic prepend="where"> <isNotNull property="name" prepend="and"> name=#name# </isNotNull> <isNotNull property="sex" prepend="and"> sex=#sex# </isNotNull> </dynamic>
1.2 结果
当name、sex都非null时打出如下的sql语句:
select Person表 where (and) name= ? , and sex= ?显然name前的and被自动去除了,很方便吧。
2.不使用dynamic
2.1 xml 如果我把dynamic 去掉就会变的很恶心,如下:select * from Person表 <isNotNull property="name" prepend="and"> name=#name# </isNotNull> <isNotNull property="sex" prepend="and"> sex=#sex# </isNotNull> 2.2 结果 当name、sex都非null时打出如下的sql语句:
select Person表 where and name= ? , and sex= ? 显然name前 多个and, sql语句错误。 3.总结dynamic 会自动去除第一个 prepend="and中的内容(这里为and),从而方便一些操作。
转载于:https://www.cnblogs.com/waiwai1015/p/4613106.html
相关资源:各显卡算力对照表!