SelectMapper接口:
//根据用户的id查询用户信息
User getUserById(@Param("id") Integer Id);
SelectMapper.xml
测试:
@Test
public void testGetUserById(){
SqlSession sqlSession = sqlSessionUtil.getSqlSession();
SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
User userById = mapper.getUserById(1);
System.out.println(userById);
}
6.2、查询一个list集合
SelectMapper接口
//查询所有用户信息
List getAllUser();
SelectMapper.xml
测试
@Test
public void testGetAllUser(){
SqlSession sqlSession = sqlSessionUtil.getSqlSession();
SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
// for (User user : mapper.getAllUser()) {
// System.out.println(user);
// }
List allUser = mapper.getAllUser();
allUser.forEach(System.out::println);
}
小结:
当查询的数据为多条时,不能使用实体类作为返回值,否则会抛出异常TooManyResultsException;但是若查询的数据只有一条,可以使用实体类或集合作为返回值。
6.3、查询单个数据
SelectMapper接口
//查询用户的总数量
Integer getCount();
SelectMapper.xml
测试
@Test
public void testGetCount(){
SqlSession sqlSession = sqlSessionUtil.getSqlSession();
SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
Integer count = mapper.getCount();
System.out.println(count);
}
6.4、查询一条数据为map集合
SelectMapper接口
//查询用户(map)
Map getUserByIdToMap(@Param("id") Integer id);
SelectMapper.xml
测试
@Test
public void testGetUserByIdToMap(){
SqlSession sqlSession = sqlSessionUtil.getSqlSession();
SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
Map userByIdToMap = mapper.getUserByIdToMap(1);
//数据为null,将不会放在map集合中
System.out.println(userByIdToMap);
}
6.5、查询多条数据为map集合
SelectMapper接口
//查询所有用户(map) // List
SelectMapper.xml
测试
@Test
public void testGetAllUserToMap(){
SqlSession sqlSession = sqlSessionUtil.getSqlSession();
SelectMapper mapper = sqlSession.getMapper(SelectMapper.class);
// for (Map stringObjectMap : mapper.getAllUserToMap()) {
// System.out.println(stringObjectMap);
// }
// List 


