4

例如,我有查询select id, name, age, address from staffs,而不是有一个 Staff 对象列表。我希望有一个地图列表,如

list{
  map{
    ("id", 123),
    ("name","jackie"),
    ("address", "canada"),
    ("age",26)
  }
  map{
    ("id", 126),
    ("name","james"),
    ("address", "canada"),
    ("age",27)
  }

}

这可能吗,如果可能的话,如何做到这一点?谢谢。

4

2 回答 2

8

对的,这是可能的。你可以在你的映射器 xml 文件中设置resultTypeHashmap它会返回一个地图列表。

<select id="selectFromStaffs" resultType="Hashmap">
    select id, name, age, address from staffs
</select>

你以同样的方式得到它:

...
List listOfMaps = sqlSession.selectList("selectFromStaffs");
...

您可以在用户指南中阅读有关它的更多信息。

于 2010-12-04T16:28:58.300 回答
5

在映射器 xml 类型resultType"map""Hashmap"映射器接口必须将 reutrn 类型写为"List"

StaffMapper.xml

<select id="getStaffList" resultType="map">
    select id, name, age, address from staffs
</select>

StaffMapper.java

import java.util.List;
import java.util.Map;
public interface StaffMapper {
    List<Map<String, Object>> getStaffList();//List getStaffList();
}
于 2013-08-21T04:27:45.380 回答