要点如下
where后的字段必须不能是字符串
like后的模糊条件 必须是字符串
1、使用数据库函数进行字符串拼接
<select id="getAllClassroomList" parameterType="classroom.pojo.query.QueryForClassroom" resultType="classroom.pojo.Classroom">
SELECT
id,room_number,room_name,room_date,room_state,room_count
FROM `e_room` r
<where>
<if test="room_name != null and room_name != ''">
r.room_name
like concat('%',#{room_name},'%')
</if>
</where>
</select>
2、使用mybatis标签进行动态sql拼接
<select id="getAllClassroomList" parameterType="classroom.pojo.query.QueryForClassroom" resultType="classroom.pojo.Classroom">
SELECT
id,room_number,room_name,room_date,room_state,room_count
FROM `e_room` r
<where>
<if test="room_name != null and room_name != ''">
<bind name="room_name" value="'%'+room_name+'%'"/>
r.room_name
like #{room_name}
</if>
</where>
</select>