Mybatis-Plus抽取查询条件
程序员文章站
2024-03-05 23:26:49
...
一、背景描述
- 在多个SQL中发现有多个查询条件是重复的;为了代码简洁,提高复用性,决定抽取这些重复条件!
二、解决方案
1、构建查询条件
<sql id="demo_query">
<if test="user.id != null and user.id != ''">
AND id = #{user.id}
</if>
</sql>
2、具体SQL引用
<select id="pageForUser" resultType="com.demo.User">
SELECT
*
FROM
user
<where>
valid = '0'
<include refid="demo_query"/>
</where>
</select>
3、注意事项
-
<include>
标签必须在<where>
中,否则不生效 -
<include>
标签的refid属性和<sql>
标签的id属性必须一致