亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

JDBCTemplate調用存儲過程

2019-11-11 05:07:49
字體:
來源:轉載
供稿:網友
一、調用無返回值的存儲過程
public class callPRocedure {        private JdbcTemplate jdbcTemplate;        public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {        this.jdbcTemplate = jdbcTemplate;        }        public void test(){           this.jdbcTemplate.execute("{call procedureName (?)}");        }      } 二、調用有返回值的存儲過程(不是結果集)
public class test {            /**       * 調用無參的存儲過程(有返回值)       * @return       */      public static int callProcedure() {            String str = (String)jdbcTemplate.execute(new CallableStatementCreator(){                  @Override                  public CallableStatement createCallableStatement(Connection connection) {                        String procedure = "{call PRC_BJ_SYNC_CIRCUIT_DATA_INCRE (?)}";//存儲過程                        CallableStatement cs = null;//創建存儲過程的對象                        try {                              cs = connection.prepareCall(procedure);                              cs.registerOutParameter(1,OracleTypes.VARCHAR);//注冊輸出參數的類型                        } catch (Exception e) {                              logger.error("call procedure error : " + e);                        }                        return cs;                  }            }, new CallableStatementCallback(){                  @Override                  public Object doInCallableStatement(CallableStatement cs) {                        String CSStr = null;                        try {                              cs.execute();                              csStr = cs.getString(1);//獲取輸出參數的值                        } catch (Exception e) {                              logger.error("call procedure error : " + e);                        }                        return csStr;//獲取輸出參數的值                  }});            return Integer.parseInt(str);      }            /**       * 調用有參的存儲過程(有返回值)       * @return       */      public static int callProcedure() {            String str = (String)jdbcTemplate.execute(new CallableStatementCreator(){                  @Override                  public CallableStatement createCallableStatement(Connection connection) {                        String procedure = "{call PRC_BJ_SYNC_CIRCUIT_DATA_INCRE (?,?)}";//存儲過程                        CallableStatement cs = null;//創建存儲過程的對象                        try {                              cs = connection.prepareCall(procedure);                              cs.setString(1,"value1");//設置入參的值                              cs.registerOutParameter(1,OracleTypes.VARCHAR);//注冊輸出參數的類型                        } catch (Exception e) {                              logger.error("call procedure error : " + e);                        }                        return cs;                  }            }, new CallableStatementCallback(){                  @Override                  public Object doInCallableStatement(CallableStatement cs) {                        String csStr = null;                        try {                              cs.execute();                              csStr = cs.getString(2);//獲取輸出參數的值                        } catch (Exception e) {                              logger.error("call procedure error : " + e);                        }                        return csStr;//獲取輸出參數的值                  }});            return Integer.parseInt(str);      }}三、調用有返回值的存儲過程(是結果集)
public class test {             List resultList = (List) jdbcTemplate.execute(                 new CallableStatementCreator() {                    public CallableStatement createCallableStatement(Connection con) throws SQLException {                       String storedProc = "{call PRC_BJ_SYNC_CUST_DATA(?,?)}";// 調用的sql                       CallableStatement cs = con.prepareCall(storedProc);                       cs.setString(1, "p1");// 設置輸入參數的值                       cs.registerOutParameter(2, OracleTypes.CURSOR);// 注冊輸出參數的類型                       return cs;                    }                 }, new CallableStatementCallback() {                    public Object doInCallableStatement(CallableStatement cs) throws SQLException,DataaccessException {                       List resultsMap = new ArrayList();                       cs.execute();                       ResultSet rs = (ResultSet) cs.getObject(2);// 獲取游標一行的值                       while (rs.next()) {// 轉換每行的返回值到Map中                          Map rowMap = new HashMap();                          rowMap.put("id", rs.getString("id"));                          rowMap.put("name", rs.getString("name"));                          resultsMap.add(rowMap);                       }                       rs.close();                       return resultsMap;                    }              });          for (int i = 0; i < resultList.size(); i++) {             Map rowMap = (Map) resultList.get(i);             String id = rowMap.get("id").toString();             String name = rowMap.get("name").toString();             System.out.println("id=" + id + ";name=" + name);          }}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品久久久久久av下载红粉| 日韩精品日韩在线观看| 992tv在线成人免费观看| 色爱精品视频一区| 91精品国产网站| 成人午夜一级二级三级| 中文字幕av一区二区三区谷原希美| 亚洲欧美日韩中文视频| 亚洲视频在线播放| 国产精品美女www| 国内精品中文字幕| 欧美亚洲免费电影| 3344国产精品免费看| 色妞色视频一区二区三区四区| 国产区亚洲区欧美区| 午夜精品理论片| 亚洲a在线播放| 亚洲三级免费看| 亚洲影院高清在线| 91香蕉嫩草影院入口| 国产精品亚洲一区二区三区| 亚洲成人久久久| 国产精品免费一区| 精品一区二区三区三区| 亚洲香蕉av在线一区二区三区| 欧美日韩一区二区三区在线免费观看| 久久久久久久亚洲精品| 国产亚洲激情在线| 日韩成人av网址| 日韩极品精品视频免费观看| 在线观看精品自拍私拍| 欧美激情视频网| 欧美成人sm免费视频| 国产va免费精品高清在线观看| 欧美电影在线观看高清| 久热爱精品视频线路一| 久久精品国产69国产精品亚洲| 色婷婷**av毛片一区| 国产亚洲欧洲黄色| 欧美日韩福利电影| 久久久这里只有精品视频| 日本一区二区不卡| 日本高清不卡的在线| 国产精品444| 日韩不卡中文字幕| 伊人久久男人天堂| 国产精品美女在线| 丁香五六月婷婷久久激情| 91国自产精品中文字幕亚洲| 色婷婷综合成人| 精品福利免费观看| 欧美激情第三页| 国产精品直播网红| 中文字幕九色91在线| 最近中文字幕mv在线一区二区三区四区| 97色在线观看| 欧美最顶级的aⅴ艳星| 久久久精品一区二区三区| 欧美高清在线视频观看不卡| 欧美多人乱p欧美4p久久| 日韩高清免费在线| 亚洲日韩中文字幕在线播放| 亚洲欧美日韩在线高清直播| 日韩在线观看网址| 日韩av在线导航| 欧美在线观看日本一区| 亚洲一区亚洲二区| 日韩一二三在线视频播| 午夜精品久久久久久久99黑人| 伊人久久免费视频| 成人午夜在线观看| 日韩欧美国产视频| 久久频这里精品99香蕉| 中文字幕少妇一区二区三区| 国产免费一区二区三区在线能观看| 欧美日韩在线视频首页| 国产免费观看久久黄| 国产在线98福利播放视频| 亚洲性线免费观看视频成熟| 国产精品激情av电影在线观看| 欧美一级淫片丝袜脚交| 欧美色视频日本高清在线观看| 午夜欧美大片免费观看| 欧美xxxx做受欧美| 国产精品第10页| 色婷婷久久一区二区| 色综合天天综合网国产成人网| 韩剧1988在线观看免费完整版| 久久亚洲精品国产亚洲老地址| 国产精品9999| 亚洲欧美另类中文字幕| 国内精品在线一区| 国产精品一区=区| 国产精品亚洲第一区| 在线播放亚洲激情| 欧美日韩一区二区三区| 欧美一级大片视频| 国产精品爱久久久久久久| 国产黑人绿帽在线第一区| 精品一区二区三区四区在线| 久久精品视频导航| 中文字幕日韩免费视频| 日韩欧美在线视频免费观看| 中文字幕不卡在线视频极品| 亚洲女人天堂色在线7777| 免费97视频在线精品国自产拍| 国产亚洲激情在线| 色偷偷9999www| 欧美成人精品一区| 日韩一二三在线视频播| 国产精品免费一区二区三区都可以| 欧美又大粗又爽又黄大片视频| 欧美丰满老妇厨房牲生活| 日韩av电影国产| 日韩在线一区二区三区免费视频| 国产视频精品免费播放| 国产精品视频一| 精品久久久久久久久中文字幕| 91精品视频观看| 欧美www视频在线观看| 精品一区二区亚洲| 北条麻妃在线一区二区| 欧洲成人性视频| 国产成人精品电影久久久| 国产丝袜一区二区| 国产日韩在线一区| 日韩视频免费大全中文字幕| 亚洲欧美在线播放| 久久久免费电影| 午夜精品久久久久久久男人的天堂| 国产精品久久久久秋霞鲁丝| 欧美在线视频在线播放完整版免费观看| 欧美怡红院视频一区二区三区| 欧美午夜视频在线观看| 日韩电影在线观看免费| 国产欧美日韩91| 亚洲午夜未删减在线观看| 亚洲97在线观看| 九九热这里只有精品免费看| 亚洲第一黄色网| 最近免费中文字幕视频2019| 在线观看国产精品淫| 51ⅴ精品国产91久久久久久| 成人观看高清在线观看免费| 欧美午夜精品久久久久久人妖| 岛国av在线不卡| 最新91在线视频| 久久精品视频在线播放| 91超碰中文字幕久久精品| 国产精品久久国产精品99gif| 国产一区视频在线播放| 日韩欧美中文免费| 国产精品久久久久久婷婷天堂| 国产香蕉精品视频一区二区三区| 亚洲欧美国内爽妇网| 国产日韩在线观看av| 成人免费网视频| 97香蕉超级碰碰久久免费软件| 成人av在线天堂| 精品一区二区三区四区在线| 亚洲大胆人体视频| 欧美xxxx做受欧美| 国产日产久久高清欧美一区| 久久精品视频va|