厦门网站建设哪家不错推荐,网站建设视频万网,大连市,宿州网站建设推广MyBatis的各种查询功能
如果查询出的数据只有一条#xff0c;可以通过
实体类对象接收List集合接收Map集合接收
如果查询出的数据有多条#xff0c;一定不能用实体对象接收#xff0c;会抛TooManyResultsException#xff0c;可以通过
实体类类型的List集合接收Map类型…MyBatis的各种查询功能
如果查询出的数据只有一条可以通过
实体类对象接收List集合接收Map集合接收
如果查询出的数据有多条一定不能用实体对象接收会抛TooManyResultsException可以通过
实体类类型的List集合接收Map类型的List集合接收在mapper接口的方法上添加MapKey注解
1.查询一个实体类对象----根据id查询用户信息
①在UserMapper接口里面定义方法 ②在UserMapper.xml配置 2.查询一个List集合--所有用户信息 ①UserMapper接口 ②在UserMapper配置类里面 3.查询单个数据—查询用户数量
在MyBatis中java常用类型都设置了类型别名java.lang.Integeràint或integerint-_int(基本数据类型就是_类型)Map-mapString-string
①在UserMaper接口写上方法名 ②在UserMapper.xmlresultType查询出结果的类型 4.查询一条数据为map集合
①在UserMapper接口里MapString,ObjectString代表属性名Object代表属性值
/*** 根据id查询出用户信息返回map*/
MapString,Object getUserById(Param(id) Integer id);②在UserMapper.xml配置类 ③测试
public class test {Testpublic void t1() {SqlSession sqlSession SqlSessionUtils.getSqlSession();ParameterMapper mapper sqlSession.getMapper(ParameterMapper.class);MapString, Object userById mapper.getUserById(45);for (String key:userById.keySet()) {Object values userById.get(key);System.out.println(keyvalues);}}
}结果是 属性名属性值 组合成的map集合 4.查询多条数据为map集合
查询所有用户信息为map集合将表中的数据以map集合查询一条数据对应一个map多条数据多个map集合存放在一个list集合中获取
方式一
①在UserMapper接口ListMapString,Object把多个map放在list集合中。每一个list集合是map
/*** 根据id查询出用户信息返回map* return*/
ListMapString,Object getAllUser();②在UserMapper.xml
?xml version1.0 encodingUTF-8 ?
!DOCTYPE mapperPUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd
mapper namespacecom.atguigu.mybatis.mapper.ParameterMapperselect idgetAllUser resultTypejava.util.Mapselect * from t_user/select
/mapper③测试
public class test {Testpublic void t1() {SqlSession sqlSession SqlSessionUtils.getSqlSession();ParameterMapper mapper sqlSession.getMapper(ParameterMapper.class);ListMapString, Object allUser mapper.getAllUser();for (MapString, Object map:allUser) {System.out.println(每个map信息如下);for (String key:map.keySet()) {Object value map.get(key);System.out.println(keyvalue);}}}
}方式二 通过添加MapKey”id”注解,此时键是id值是每条数据转换为map集合 ①在UserMapper接口里
/*** 根据id查询出用户信息返回map*/
MapKey(id)
MapInteger,Object getAllUser();②在UserMapper.xml里
select idgetAllUser resultTypejava.util.Mapselect * from t_user
/select③测试
public void t1() {SqlSession sqlSession SqlSessionUtils.getSqlSession();ParameterMapper mapper sqlSession.getMapper(ParameterMapper.class);MapInteger, Object allUser mapper.getAllUser();for (Integer id : allUser.keySet()) {Object user allUser.get(id);System.out.println(iduser);}
}