getUserByName
//单参数模糊查询
public List<User> getUserListName(String userName);
//多参数模糊查询
public List<User> getUserLists(User user);
//多参数模糊查询(map入参)
public List<User> getUserListMap(Map<String,String> userMap);
UserMapper.xml
<!-- 模糊查询 单参数 -->
<select id="getUserListName" parameterType="String" resultType="User">
select * from smbms_user
where userName like CONCAT('%',#{userName},'%')
</select>
<!-- 模糊查询 多个参数:使用对象 -->
<select id="getUserLists" resultType="User" parameterType="User">
select * from smbms_user
where userName like CONCAT('%',#{userName},'%') AND userRole=#{userRole}
</select>
<!-- 模糊查询 多个参数:使用Map集合 -->
<select id="getUserListMap" resultType="User" parameterType="Map">
select * from smbms_user
where userName like CONCAT('%',#{uName},'%') AND userRole=#{uRole}
</select>
使用map集合的测试类
@Test
public void test7() {
List<User> userList=new ArrayList<User>();
SqlSession sqlSession=null;
try {
sqlSession=MyBatisUtil.createSqlSession();
Map<String,String>userMap=new HashMap<String,String>();
userMap.put("uName", "赵");//key 要和 sql映射xml中的保持一致
userMap.put("uRole", "3");
userList=sqlSession.getMapper(UserMapper.class).getUserListMap(userMap);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
MyBatisUtil.closeSqlSession(sqlSession);
}
for(User user :userList){
System.out.println(user.getUserCode()+"----"+user.getUserName()+"----"+user.getUserRole());
}
}