Spring jdbc呼び出しストレージ・プロシージャ・パッケージ


1、 -- list
 
  
/**
		 *             --    List
		 * @param procedureName      
		 * @param inParameter         
		 * @param outParamter        
		 * @return
		 */
		public List callProcedure(final String procedureName,final List inParameter,final List outParamter){
			if(procedureName==null || procedureName.length() == 0 ){
				return null;
			}
			//      
			if(outParamter == null ){
				if(callProcedureWithoutOut(procedureName,inParameter))return null;
			}
			 List resultList = (List) DBUtility.getJdbcTemplate().execute(  
				     new CallableStatementCreator() {
						public CallableStatement createCallableStatement(Connection con) throws SQLException {
							int inSize = inParameter==null?0:inParameter.size();
							int outSize = outParamter==null?0:outParamter.size();
							StringBuffer sbsql = new StringBuffer();
							sbsql.append("{call "+procedureName).append("(");
							for(int i=0;i 0 ){
					        	String typeName =  null;
					        	for(int i=0;i() {
						public List doInCallableStatement(CallableStatement cs) throws SQLException,DataAccessException {   
							   int inSize = inParameter==null?0:inParameter.size();
					           List resultsMap = new ArrayList();   
					           cs.execute();   
					           ResultSet rs = (ResultSet) cs.getObject(inSize+1);//            
					           while (rs.next()) {//          Map    
					              Map rowMap = new HashMap();  
					              for(int i=0;i 0 ){
					        	String typeName =  null;
					        	for(int i=0;i() {
						public Object doInCallableStatement(CallableStatement cs) throws SQLException,DataAccessException {   
							   int inSize = inParameter==null?0:inParameter.size();
					           List resultsMap = new ArrayList();   
					           cs.execute();   
					           return  cs.getObject(inSize+1);//            
					        }   
						
					}); 
			 return result;
		}