mybatis调用存储过程返回Clob

传入和接收类型均为CLOB,直接上代码

service服务层:

注意对Clob返回内容的解析及JSONObject的转化。

@Override
public JSONObject processCall(JSONObject context) throws Exception {
    Map<String, Object> paramMap = new HashMap<>();
    paramMap.put("p_message", context.toJSONString());
    paramMap.put("x_resp_msg", null);
    callMapper.callInfo(paramMap);
    Clob clob=(Clob)paramMap.get("x_resp_msg");
    String result= (clob != null ? clob.getSubString(1, (int) clob.length()) :"");
    JSONObject jsonObject=JSONObject.parseObject(result);
    return jsonObject;
}

mapper:

void callInfo(@Param("bean") Map<String,Object> erpMap);

mapper.xml:

 <select id="callInfo" parameterType="java.util.Map" statementType="CALLABLE">
   {call pkg.handle_message(#{bean.x_resp_msg,mode=OUT,jdbcType=CLOB},#{bean.p_message,mode=IN,jdbcType=CLOB})}
</select>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值