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("");
    
        }
    }
  • 相关阅读:
    理解session
    java ee后台运行原理(Servlet)
    XML:是什么?怎样工作的?可以做什么?将来的发展有会怎样?
    互联网应用与企业级应用的区别
    自我介绍
    补充第一周
    第一周代码(四则运算)
    自我介绍
    程序1:自动生成小学四则运算题目
    初读《构建之法现代软件工程》的5个疑问
  • 原文地址:https://www.cnblogs.com/zml-java/p/9443947.html
Copyright © 2011-2022 走看看