mybatis动态条件查询修改小例子

来源:互联网 发布:常客网络创新 编辑:程序博客网 时间:2024/04/30 02:29

1.动态查询映射文件中sql写法:

<select id="selectPersonByCondition" parameterType="map" resultMap="BaseResultMap">select * from person p<where><if test="name != null">p.name like '%${name}%'</if><if test="gender != null">and p.gender = #{gender}</if><if test="personAddr != null">and p.person_addr like '%${personAddr}%'</if><if test="birthday != null"><![CDATA[and p.birthday < #{birthday}]]></if></where></select>
说明:

1.xml中<号如何转义:

2.where标签可以自动解决and 问题。


2.动态更新:映射文件中sql写法

<update id="dynamicUpdate" parameterType="person">update person1 p <set><if test="name != null">p.name = #{name},</if><if test="gender != null">p.gender = #{gender},</if><if test="personAddr != null">p.person_addr = #{personAddr},</if><if test="birthday != null">p.birthday = #{birthday}</if></set>where p.person_id = #{personId}</update>
说明:动态更新使用set标签


0 0
原创粉丝点击