在 SSM 系统中,如何调用存储过程?

在 SSM 框架中,需要调用存储过程,与平常的 Dao 接口调用相比,调用存储过程有什么变化呢?
在我的例子中,框架是已经搭建好的,这里只是展示 Dao 层和 mapper 中的配置。

mapper 文件中的 SQL 配置如下:

<select id="callWorkflow" parameterType="map" statementType="CALLABLE">
         {
            call SP_WORKFLOW(
                  #{pteNo,mode=IN,jdbcType=VARCHAR},
                  #{busType,mode=IN,jdbcType=VARCHAR},
                  #{operate,mode=IN,jdbcType=VARCHAR},
                  #{errCode,mode=OUT,jdbcType=VARCHAR},
                  #{errMsg,mode=OUT,jdbcType=VARCHAR}
            )
        }
</select>

Dao层的接口定义如下:

Map<String,Object> callWorkflow(Map<String, Object> map);

存储过程定义的如下:

CREATE OR REPLACE PROCEDURE "SP_WORKFLOW"(
    PTE_NO VARCHAR2, 
    BUS_TYPE VARCHAR2,
    operate varchar2,
    ERR_CODE OUT VARCHAR2,
    ERR_MSG OUT VARCHAR2)
    ...

猜你喜欢

转载自blog.csdn.net/yujikui1/article/details/80192704