1.selectList() 返回值为 List<resultType 属性控制>
1.1 适用于查询结果都需要遍历的需求
Mapper:
<select id="selAll" resultType="com.soft.pojo.Flower">
select * from flower
</select>
Java代码:
// 查询操作(selectList("")的参数对应mapper中的namespace命名空间的值+select标签的id值)
List<Flower> list = session.selectList("com.soft.FlowerDao.selAll");
// 打印查询到的数据
for (Flower flower : list) {
System.out.println(flower.toString());
}
2.selectOne() 返回值 Object,
2.1 适用于返回结果只是变量或一行数据时
resultType="int"的值(注意:这里的int是别名)可以参考:http://www.mybatis.org/mybatis-3/zh/configuration.html# ——> typeAliases
Mapper:
<select id="selContent" resultType="int">
SELECT COUNT(*) FROM flower
</select>
Java代码:
int count = session.selectOne("com.soft.FlowerDao.selContent");
System.out.println(count);
3.selectMap() 返回值 Map
3.1 适用于需要在查询结果中通过某列的值取到这行数据的需求.
3.2 Map<key,resultType 控制>
Mapper:
<select id="selOne" resultType="com.soft.pojo.Flower">
<!-- 注意:当实体类的属性名称和数据库表中的列名不对应时,使用别名 -->
select id,name,price,production from flower
</select>
Java代码:
// Map<key,resultType 控制>
// selectMap(String arg0, String arg1):arg0是mapper中的namespace+select的ID值,arg1是实体类的属性名称
Map<Object, Object> selOne = session.selectMap("com.soft.FlowerDao.selOne", "name");
System.out.println(selOne);