Mybatis 存储过程调用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis 存储过程调用相关的知识,希望对你有一定的参考价值。

1 存储过程

create or replace procedure proc_bus_tendstatus(v_tendid in Integer,cur_tendstatus out sys_refcursor)
as
v_zbbg varchar2(2);--生命变量
begin
     
    --编写逻辑体内容
      commit;
      --返回游标
      open cur_tendstatus for
      select * from tp_buss_tendstatus where tendid = v_tendid;

end proc_bus_tendstatus;

 

2 mapper.xml 文件配置

<select id="queryTenderStByTendid" statementType="CALLABLE" parameterType="Map">
        call proc_bus_tendstatus(
            #{tendid,mode=IN,jdbcType=NUMERIC,javaType=Integer},
            #{tenderSts,mode=OUT,jdbcType=CURSOR,javaType=java.sql.ResultSet,resultMap=tenderStMap}
        )
</select>

 

3 Dao 层编码

public List<TenderStBean> queryTenderStByTendid(int tendid) {
        Map<String,Object> map = new HashMap<String,Object>();
        map.put("tendid", tendid);
        this.getSqlSession().selectList("ebidding.sp.tendrep.Project.queryTenderStByTendid", map);
        List<TenderStBean> rows = (List<TenderStBean>)map.get("tenderSts");
        return rows;
}

 

以上是关于Mybatis 存储过程调用的主要内容,如果未能解决你的问题,请参考以下文章

mybatis 调用存储过程

使用MyBatis轻松实现递归查询与存储过程调用

mybatis 调用mysql存储过程 带输出输入参数

mybatis调用Oracle存储过程

mybatis 存储过程

mybatis 调用存储过程进行批量修改操作(只需要一次调用存储过程),不知道如何配置配置文件