Mybatis(二) 三种查询方式

<!-- namesapce:理解成实现类的全路径(包名+类名) -->
<mapper namespace="a.b">
    <!-- id:方法名
        parameterType:定义参数类型
        resultType:返回值类型.
        
        如果方法返回值是list,在resultType中写List的泛型,因为mybatis
        对jdbc封装,一行一行读取数据
    -->
    <select id="selectAll" resultType="com.zzu.pojo.People">
        select * from test
    </select>
    <select id="count" resultType="int">
        select count(*) from test
    </select>
    <select id="_selectAll" resultType="com.zzu.pojo.People">
        select id,name,money from test
    </select>
</mapper>

一、selectList() 

1、返回值为 List<resultType 属性控制>
2、适用于查询结果都需要遍历的需求

List<People> list = session.selectList("a.b.selectAll");
    for(People p : list) {
        System.out.println(p.toString());
    } 

二、selectOne() 


1、返回值 Object
2、适用于返回结果只是变量或一行数据时

int count = session.selectOne("a.b.count");
    System.out.println(count);

三、selectMap() 


1、返回值 Map
2、适用于需要在查询结果中通过某列的值取到这行数据的需求
3、Map<key,resultType 控制>

Map<Object,Object> map = session.selectMap("a.b._selectAll", "name");
    System.out.println(map.toString());

猜你喜欢

转载自www.cnblogs.com/wxinyi/p/12526673.html