使用Spring Framework提供的StoredProcedure调用Oracle存储过程

时间:2017-01-17 19:56:53

标签: java spring oracle stored-procedures plsql

我看到一个代码似乎在类org.springframework.jdbc.object.StoredProcedure中使用execute方法调用存储过程。地图作为输入传递给此方法。但是,我没有看到存储过程名称或函数名称作为输入传递。 Spring如何确保执行存储过程中的正确功能?

    map.put(FAULT_CODE, faultCode);
    map.put(FAULT_MESSAGE, faultMessage);
    Map result = this.execute(map);

1 个答案:

答案 0 :(得分:1)

org.springframework.jdbc.object.StoredProcedure有3个构造函数:

对于豆

protected StoredProcedure()
Allow use as a bean.

用于数据源:

protected StoredProcedure(DataSource ds,
                          String name)

//name - name of the stored procedure in the database 

对于创建包装器:

protected StoredProcedure(JdbcTemplate jdbcTemplate,
                          String name)
//name - name of the stored procedure in the database 

在第二种和第三种情况下,您在创建时指定存储过程的名称。我想其中一个就是你的情况。