zoukankan      html  css  js  c++  java
  • java调用存储过程

    /**
     * @Auther: zml
     * @Date: 2018/6/8
     */
    
    import org.springframework.jdbc.core.CallableStatementCallback;
    import org.springframework.jdbc.core.CallableStatementCreator;
    import org.springframework.jdbc.core.JdbcTemplate;
    
    import java.sql.CallableStatement;
    import java.sql.Connection;
    import java.sql.SQLException;
    import java.sql.Types;
    import java.util.ArrayList;
    import java.util.List;
    
    /**
     * @Auther: zml
     * @Date: 2018/6/8
     */
    public class Test {
    
        private JdbcTemplate jdbcTemplate;
    
        public JdbcTemplate getJdbcTemplate() {
            return jdbcTemplate;
        }
    
        public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
            this.jdbcTemplate = jdbcTemplate;
        }
    
    
        //调用存储过程,一个输入参数,三个输出
        public List<String> callPro(String str){
            //final String str = str.toString();
            List<String> resList = (List)jdbcTemplate.execute(
                new CallableStatementCreator(){
                    @Override
                    public CallableStatement createCallableStatement(Connection connection) throws SQLException {
    
                        String storedPro = "{call KPI.CHECK_SITUATION(?,?,?,?)}";
                        CallableStatement cs = connection.prepareCall(storedPro);
                        cs.setString(1, str);
                        //输出参数类型
                        cs.registerOutParameter(2, Types.INTEGER);
                        cs.registerOutParameter(3, Types.VARCHAR);
                        cs.registerOutParameter(4, Types.VARCHAR);
                        return cs;
                    }
    
                },(cs)->{
                        cs.execute();
                        List<String> list = new ArrayList<String>();
                        list.add(cs.getInt(2)+"");
                        list.add(cs.getString(3));
                        list.add(cs.getString(4));
                        return list ;
    
                }
            );
            return resList;
        }
    
    
    
        public static void xxmain(String[] args){
            Test t = new Test();
            //调用存储过程,传一个空的字符串
            t.callPro("");
    
        }
    }
  • 相关阅读:
    造轮子 | 怎样设计一个面向协议的 iOS 网络请求库
    win7 激活码 秘钥
    python-pptx
    pycharm
    itop 环境
    Ubuntu上安装MongoDB(译)
    python之fabric(二):执行模式(转)
    python之fabric(一):环境env
    Windows下pip安装包报错:Microsoft Visual C++ 9.0 is required Unable to find vcvarsall.bat
    vagrant系列教程(四):vagrant搭建redis与redis的监控程序redis-stat(转)
  • 原文地址:https://www.cnblogs.com/zml-java/p/9443947.html
Copyright © 2011-2022 走看看