mybatis传递多个参数
map是其中一种
mapper.xml文件中写法:
<select id="poliDetail" resultMap="BaseResultMap4" parameterType="java.util.Map">
SELECT
p.policycode,
p.prepolicycode,
p.salercode,
p.fee,
p.firstpaytype,
p.receivedate,
p.ackdate,
p.effectdate,
p.state
FROM
t2_plc_p_policy p
WHERE
p.prepolicycode = #{INSCODE}
AND p.policycode = #{POLICYCODE}
</select>
mapper.java文件中写法:
List<PolicyFisDto> poliDetail(Map<String, Object> paramMap);
直接在controller层中调用的方法:
/**
*
* poliDetail: (查询保单详情).<br/>
* @author: Lelonta
* @param json
* @return
*/
@RequestMapping("poliDetail")
public @ResponseBody JSONArray poliDetail(String json) {
Map< String, Object> paramMap = JsonUtils.strToHashMap(json);
List<PolicyFisDto> poliDetail = PolicyDtoMapper.poliDetail(paramMap);
return MyJsonUtils.returnSuccessAndExcludeArry(poliDetail, new String[] {});
}
特别说明一下:
JsonUtils.strToHashMap(json) 是将json字符串形式的参数 转换成了map
如果不用
json={
"POLICYCODE": "45454545457787878",
"INSCODE": "11022000011939"
}
这种格式传参
可以直接创建map后
使用map.put("a",A);
的形式就行了