最近工作中遇到需要自己通过mybatis写自定义的SQL,为了得到数据能够直接使用,需要让SQL以Map数据格式返回结果集,之前写过的自定义SQL都是直接返回查询到的数据,并没有规定Map类型,所以这次也算是个新体验^_^记录一下吧
1、在Mapper中定义接口
/**
* 拓展SQL:查询全部单位信息Map
*/
@MapKey("id")//用于指定id作为Map中的Key
Map<Integer,Org> selectAllOrgMap();
2、在mapper对应的xml中拓展SQL
注意:这里千万不要把resultType写成java.util.HashMap,一定要写成能够装orgName的对象的类型
<!--拓展查询:全部单位信息-->
<select id="selectAllOrgMap" resultType="cn.com.xxx.manager.dao.entity.Org">
SELECT id,`name` as `orgName` FROM `account_org`;
</select>
public class Org{
private Integer id;
private String orgName;
public Integer getId() {
return id;
}
public v