public interface TestUserMapper {
@Select("select * from test_user where username like #{username}")
public List<TestUser> getUserListByNames(String username);
}
然后程序中拼接:
testUserList = testUserService.getUserListByNames("'%"+ username + "%'");
为啥不对?
------解决方案--------------------
语句修改成 select * from test_user where username like '$username$'
------解决方案--------------------
传参的时候把两个''去掉,不要用$$这个容易被sql注入
------解决方案--------------------
方法一:去掉单引号
testUserList = testUserService.getUserListByNames("%"+ username + "%");
方法二:重写SQL
@Select("select * from test_user where username like '%#{username}%'")