1. 执行无返回值的存储过程
- (1)
- public void deleteCheckedRecors(String rootInstId,String tableName,String primarykey,String bizguidValue)throws Exception{
- try{
- String procedure = "{call sp_deleteInstByRootID('"+rootInstId+"')}";
- this.getJdbcTemplate().execute(procedure); }catch(Exception e){
- e.printStackTrace();
- }
- }
- (2)
- public int addORDelAgentPerson(final String strTableID,final String strUserID,final String strAgentID,final String strType)throws Exception{
- String procedure = "{call SP_SetDevolvePerson(?,?,?,?)}";
- try{
- this.getJdbcTemplate().execute(procedure, new CallableStatementCallback(){
- public Object doInCallableStatement(CallableStatement cs) throws SQLException, DataAccessException {
- cs.setString(1, strTableID);
- cs.setString(2, strUserID);
- cs.setString(3, strAgentID);
- cs.setString(4, strType);
- cs.execute();
- return cs;
- }
- });
- return 1;
- }catch(Exception e){
- e.printStackTrace();
- return 0;
- }
- }
2.执行有返回值的存储过程
- public Map testProcdure(final String uerId)throws Exception{
- String procedure = "{call SP_GetUserInfo(?,?,?,?)}";
- Map map = null;
- try{
- map = (Map) this.getJdbcTemplate().execute(procedure, new CallableStatementCallback(){
- public Object doInCallableStatement(CallableStatement cs) throws SQLException, DataAccessException {
- cs.setString(1,uerId);//输入参数
- cs.registerOutParameter(2,OracleTypes.VARCHAR); //输出参数
- cs.registerOutParameter(3,OracleTypes.VARCHAR);//输出参数
- cs.registerOutParameter(4,OracleTypes.VARCHAR);//输出参数
- cs.execute();
- Map newMap = new HashMap();
- newMap.put("name", cs.getString(2));
- newMap.put("telephone",cs.getString(3));
- newMap.put("post",cs.getString(4));
- return newMap ;
- }
- });
- }catch(Exception e){
- e.printStackTrace();
- }
- return map;
- }