SQL SERVER和ORACEL通过MYBATILS调用存储过程

1.SQL SERVER

1)controller层:

String startTime = null;
String endTime = null;
Response res =null;
HashMap<String,Object> map = new HashMap<String,Object>();

startTime = request.getParameter("startTime");
endTime = request.getParameter("endTime");
map.put("startTime", startTime);
map.put("endTime", endTime);
map.put("type", 2);
res = service.getData(map);
 List<InstallSuccessRate> list =(List<InstallSuccessRate>)res.getList();

2)DAO层:

Response res = new Response();
List<InstallSuccessRate> list =  getSqlSession().selectList("InstallSuccessRateMapper.getData",map);
if(list == null){
list = new ArrayList();
res.setStatusCode(StatusCode.FAILED);
}
res.setList(list);
res.setAllSize(list.size());
return res;

3)XML文件

 <parameterMap type="java.util.Map" id="installSuccessRateMapper">
      <parameter property="startTime" jdbcType="VARCHAR" javaType="String" mode="IN"/>
      <parameter property="endTime" jdbcType="VARCHAR" javaType="String" mode="IN"/>
      <parameter property="type" jdbcType="INTEGER" javaType="int" mode="IN"/>
  </parameterMap>

<select id="getData" statementType="CALLABLE" parameterMap="installSuccessRateMapper" resultMap="resultMap">
     {CALL sp_homenetworkreport(?,?,?)}                   
  </select>

2.ORACLE

1).controller层

HashMap<String,Object> map = new HashMap();

map.put("v_orgid", subjectorg.getOrgid());
map.put("v_year", subjectorg.getCreaty());
map.put("v_month",subjectorg.getCreatm() );
map.put("v_subid", subjectorg.getSubjid()+"");
map.put("v_type",1 );

res=service.getDataByOrgidAndSubjid(map);

2.)dao层

getSqlSession().selectList("SubjectorgMapper.getDataByOrgidAndSubjid", map);
List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();
if (map.containsKey("sys_refcursor")) {
list = (List<Map<String, Object>>) map.get("sys_refcursor");
}

3.)xml

<select id="getDataByOrgidAndSubjid"  statementType="CALLABLE">
{call get_subjectinfo(
#{v_orgid, jdbcType=INTEGER, javaType=int, mode=IN},
#{v_year, jdbcType=VARCHAR, javaType=String, mode=IN},
#{v_month, jdbcType=VARCHAR, javaType=String, mode=IN},
#{v_subid, jdbcType=VARCHAR, javaType=String, mode=IN},
#{v_type, jdbcType=INTEGER, javaType=int, mode=IN},
#{sys_refcursor,mode=OUT,jdbcType=CURSOR,javaType=ResultSet,resultMap=subjectorg})
}
</select>



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值