目录
1.模糊查询
根据用户名模糊查询用户信息
- 无法直接用#{}来进行模糊查询,因为#{}放入‘ ’中会被误认为整个都是字符串, 应该用${}来进行模糊查询
- 如果一定要使用#{} 可以用字符串拼接的方式 即concat函数拼接字符串 或者 直接用双引号拼接
以下三种方式都可以进行模糊查询
<!--List<User> getUserByLike (String username);-->
<select id="getUserByLike" resultType="User">
select * from t_user where username like '%${username}%'
</select>
<!--List<User> getUserByLike (String username);-->
<select id="getUserByLike" resultType="User">
select * from t_user where username like concat('%',#{username},'%')
</select>
<!--List<User> getUserByLike (String username);-->
<select id="getUserByLike" resultType="User">
select * from t_user where username like "%"#{username}"%"
</select>
2.批量删除
- 批量删除时,用 in关键字来判断id是否在所要删除的字符串里
- 批量删除时,无法在映射文件中使用#{}来接收参数,因为#{}会自动增加单引号,这样就会造成错误
- 所以批量删除时只能使用${}
<!--int deleteMore(String ids);-->
<delete id="deleteMore">
delete from t_user where id in (${ids})
</delete>
3.动态设置表名
<!--List<User> getAllUserByTable (String tablename);-->
<select id="getAllUserByTable" resultType="User">
select * from ${tablename}
</select>