相信很多使用Mybatis的人都经常使用数据库查询批量数据,然后通过ORM映射到内存当中,一般情况下,Mybatis通过List形式来返回数据,但是有些特殊场景,大家希望返回来的集合通过主键的方式来映射到一个特定HashMap当中,通过研究,我发现通过如下当时可以达到映射效益:
DAO层对象:
package ems.rm.margindataproxy;
import java.util.HashMap;
import org.apache.ibatis.annotations.MapKey;
import ems.rm.margindataproxy.MarginData;
public interface DataMapper {
@MapKey("Stock_Code")
HashMap<String,MarginData> getAllMarginData();
}
Mapper.xml配置
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="ems.rm.margindataproxy.DataMapper" >