亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? dbmgr.java

?? 大象購物系統
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
package com.comm.db;

import java.sql.*;
import java.sql.Date;
import java.util.*;

import javax.sql.*;

import com.comm.*;
import com.comm.util.*;
import com.comm.vo.*;

public class DBMgr implements DBMgrInterface {
    private DataSource ds = null;
    private ThreadConnectionMap tcMap = new ThreadConnectionMap();

    public void setDatasource(DataSource ds) throws AppException {
        if (ds == null) {
            throw new AppException("null parameter");
        } else if (this.ds == null) {
            this.ds = ds;
        } else {
            throw new AppException("datasource already existed!");
        }

    }

    public void begin() throws SQLException {
        try {
            Connection con = getConnection();
            if (con == null) {
                throw new SQLException("no connection");
            }
            con.setAutoCommit(false);
        } catch (SQLException ex) {
            LoggerUtil.error(DBMgr.class, ex);
            throw ex;
        }
    }

    public void commit() throws SQLException {
        Connection conn = tcMap.getConnection();
        if (conn != null && conn.getAutoCommit() == false) {
            conn.commit();
            conn.setAutoCommit(true);
            tcMap.releaseConnection();
        }

    }

    public void rollback() throws SQLException {
        Connection conn = tcMap.getConnection();
        if (conn != null && conn.getAutoCommit() == false) {
            conn.rollback();
            conn.setAutoCommit(true);
            tcMap.releaseConnection();
        }

    }

    private Connection getConn() throws SQLException {
        Connection conn = ds.getConnection();
        conn.setAutoCommit(true);
        return conn;
    }

    public Connection getConnection() throws SQLException {
        return tcMap.getConnection();
    }

    public int execute(String sql, Vector param) throws SQLException {

        int error = 0;
        Connection conn = null;
        try {
            conn = getConnection();
            error = execute(sql, param, conn);

        } catch (SQLException ex) {
            LoggerUtil.error("Exception execute:" + sql + ":");
            LoggerUtil.error(param);
            LoggerUtil.error(DBMgr.class, ex);
            throw ex;
        } finally {
            tcMap.releaseConnection();
        }
        return error;
    }

    public int execute(String sql, Vector param
                       , Connection conn) throws SQLException {

        int error = 0;
        PreparedStatement pstmt = conn.prepareStatement(sql);
        for (int i = 0; i < param.size(); i++) {
            if (null == param.elementAt(i)) {
                pstmt.setString(i + 1, "");
            } else if (param.elementAt(i) instanceof String) {
                pstmt.setString(i + 1, (String) param.elementAt(i));
            } else if (param.elementAt(i) instanceof Timestamp) {
                pstmt.setTimestamp(i + 1, (Timestamp) param.elementAt(i));
            } else if (param.elementAt(i) instanceof Date) {
                pstmt.setTimestamp(i + 1
                                   ,
                                   new Timestamp(((Date) param.elementAt(i)).
                                                 getTime()));
            } else if (param.elementAt(i) instanceof Integer) {
                pstmt.setInt(i + 1, ((Integer) param.elementAt(i)).intValue());
            } else if (param.elementAt(i) instanceof Double) {
                pstmt.setDouble(i + 1
                                , ((Double) param.elementAt(i)).doubleValue());
            } else {
                pstmt.setString(i + 1, (String) param.elementAt(i));
            }
        }
        error = pstmt.executeUpdate();
        return error;
    }

    public int[] executeBatch(String sql, Vector param) throws SQLException {

        int error[] = null;
        Connection conn = null;
        try {
            conn = getConnection();
            error = executeBatch(sql, param, conn);
        } catch (SQLException ex) {
            LoggerUtil.error(" Exception execute:" + sql + ":");
            LoggerUtil.error(param);
            LoggerUtil.error(DBMgr.class, ex);
            throw ex;
        } catch (Exception ex) {
            LoggerUtil.error(" Exception execute:" + sql + ":");
            LoggerUtil.error(param);
            LoggerUtil.error(DBMgr.class, ex);
            throw new SQLException(ex.getMessage());
        }

        finally {
            try {
                tcMap.releaseConnection();
            } catch (SQLException ex1) {
                LoggerUtil.error(DBMgr.class, ex1);
            }
        }
        return error;
    }

    public int[] executeBatch(Vector sqls) throws SQLException {

        int error[] = null;
        Connection conn = null;
        try {
            conn = getConnection();
            error = executeBatch(sqls, conn);
        } catch (SQLException ex) {
            LoggerUtil.error(" Exception execute:");
            LoggerUtil.error(sqls);
            LoggerUtil.error(DBMgr.class, ex);
            throw ex;
        } finally {
            try {
                tcMap.releaseConnection();
            } catch (SQLException ex1) {
                LoggerUtil.error(DBMgr.class, ex1);
            }
        }
        return error;
    }

    public int[] executeBatch(Vector sqls, Connection conn) throws SQLException {

        int[] error;
        Statement stmt = conn.createStatement();
        for (int i = 0; i < sqls.size(); i++) {
            stmt.addBatch(BaseUtil.toString(sqls.elementAt(i)));
        }

        error = stmt.executeBatch();

        return error;
    }

    public int[] executeBatch(String sql, Vector params
                              , Connection conn) throws SQLException {

        PreparedStatement pstmt = conn.prepareStatement(sql);
        for (int j = 0; j < params.size(); j++) {
            if (params.elementAt(j) instanceof Vector) {

                Vector param = (Vector) params.elementAt(j);
                for (int i = 0; i < param.size(); i++) {
//                    LoggerUtil.debug("param " + i + " in Mgr :"
//                                     + param.elementAt(i));
//                    LoggerUtil.debug("sss=" + param.elementAt(i));
                    if (null == param.elementAt(i)) {
//                        LoggerUtil.debug("param.elementAt(i) is null");
                    } else {
//                        LoggerUtil.debug(param.elementAt(i).getClass().toString());
                    }
                    if (null == param.elementAt(i)) {
//                        LoggerUtil.debug("shit!!!!!!!!!!!");
                        pstmt.setString(i + 1, "");
//                        LoggerUtil.debug("shit!!!!!!!!!!!");
                    } else if (param.elementAt(i) instanceof String) {
                        pstmt.setString(i + 1, (String) param.elementAt(i));
                    } else if (param.elementAt(i) instanceof Date) {
                        pstmt.setDate(i + 1, (Date) param.elementAt(i));
                    } else if (param.elementAt(i) instanceof Integer) {
//                        LoggerUtil.debug((Integer) param.elementAt(i));
//                        LoggerUtil.debug(""
//                                         +
//                                         ((Integer) param.elementAt(i)).
//                                         intValue());
                        pstmt.setInt(i + 1
                                     , ((Integer) param.elementAt(i)).intValue());
                    } else if (param.elementAt(i) instanceof Double) {
                        pstmt.setDouble(i + 1
                                        ,
                                        ((Double) param.elementAt(i)).
                                        doubleValue());
                    } else {
                        pstmt.setString(i + 1, (String) param.elementAt(i));
                    }
                }
            } else {
                if (null == params.elementAt(j)) {
                    pstmt.setString(1, "");
                } else if (params.elementAt(j) instanceof String) {
                    pstmt.setString(1, (String) params.elementAt(j));
                } else if (params.elementAt(j) instanceof Date) {
                    pstmt.setDate(1, (Date) params.elementAt(j));
                } else if (params.elementAt(j) instanceof Integer) {
                    pstmt.setInt(1, ((Integer) params.elementAt(j)).intValue());
                } else if (params.elementAt(j) instanceof Double) {
                    pstmt.setDouble(1
                                    ,
                                    ((Double) params.elementAt(j)).doubleValue());
                } else {
                    pstmt.setString(1, (String) params.elementAt(j));
                }

            }
            pstmt.addBatch();
        }
        int[] error = pstmt.executeBatch();
        return error;
    }

    private ResultSet getResultSet(String sql, Vector param
                                   , Connection conn) throws SQLException {

        PreparedStatement pstmt = conn.prepareStatement(sql);
        pstmt.setFetchSize(30);
        for (int i = 0; i < param.size(); i++) {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品一区二区在线播放| 色系网站成人免费| 成人美女在线观看| 色妞www精品视频| 欧美一三区三区四区免费在线看| 日韩视频123| 最新热久久免费视频| 国产视频一区在线播放| 亚洲三级电影网站| 免费看日韩精品| 国产91综合一区在线观看| 色狠狠av一区二区三区| 欧美一级国产精品| 亚洲欧洲av一区二区三区久久| 亚洲不卡一区二区三区| 国产福利一区二区三区| 欧美网站大全在线观看| 日韩精品一区二区三区视频播放| 久久精品视频免费| 无码av中文一区二区三区桃花岛| 国产一区二区三区在线观看免费视频| 91亚洲永久精品| 欧美日韩一区不卡| 亚洲乱码国产乱码精品精小说| 老汉av免费一区二区三区| 色综合咪咪久久| 中文成人综合网| 日本视频一区二区三区| 97久久久精品综合88久久| 日韩亚洲欧美中文三级| 亚洲激情成人在线| 成人h动漫精品| 精品福利av导航| 天堂在线亚洲视频| 欧美在线观看视频一区二区 | 婷婷综合五月天| 91视视频在线观看入口直接观看www| 日韩你懂的电影在线观看| 亚洲国产精品久久不卡毛片| 成人高清视频在线| 久久精品欧美一区二区三区麻豆| 奇米精品一区二区三区在线观看 | 国产午夜精品美女毛片视频| 日韩精品91亚洲二区在线观看| 99久久精品免费看国产免费软件| 久久尤物电影视频在线观看| 日韩影院免费视频| 欧美久久久久久久久中文字幕| 亚洲视频小说图片| 不卡av免费在线观看| 国产女人18水真多18精品一级做| 麻豆91精品视频| 91精品国产91热久久久做人人| 亚洲二区在线视频| 91精品婷婷国产综合久久性色| 亚洲成人在线网站| 精品欧美乱码久久久久久1区2区 | 99精品久久99久久久久| 一区二区三区在线影院| 欧美酷刑日本凌虐凌虐| 九色综合国产一区二区三区| 国产欧美日韩麻豆91| 色香色香欲天天天影视综合网| 肉丝袜脚交视频一区二区| 欧美成人乱码一区二区三区| av不卡在线观看| 日本中文字幕不卡| 国产欧美一区二区精品性色| 色菇凉天天综合网| 极品美女销魂一区二区三区| 日韩毛片在线免费观看| 欧美精品久久99久久在免费线 | 麻豆国产欧美一区二区三区| 国产欧美视频在线观看| 色噜噜夜夜夜综合网| 国产精品自在在线| 亚洲午夜激情av| 中文字幕欧美激情| 欧美一区二区性放荡片| 99久久国产综合精品麻豆| 日本va欧美va精品发布| 亚洲精品福利视频网站| 国产午夜精品理论片a级大结局| 欧美视频在线一区二区三区| 国产精品66部| 日av在线不卡| 一区二区在线观看视频在线观看| 欧美精品一区二区三区四区| 91精品办公室少妇高潮对白| 国产一区二区三区av电影| 亚洲国产成人av网| 亚洲欧美国产毛片在线| 久久久91精品国产一区二区三区| 欧美日韩一区三区四区| 99这里只有久久精品视频| 久久99蜜桃精品| 日韩高清欧美激情| 亚洲一区视频在线观看视频| 中文字幕欧美日韩一区| 久久日韩精品一区二区五区| 欧美精品一卡二卡| 色综合久久久久网| av一区二区不卡| 国产成人免费视频网站高清观看视频| 日韩精品亚洲专区| 亚洲成av人片一区二区三区| 亚洲精品福利视频网站| 亚洲三级在线免费观看| 中文字幕一区二区三区不卡在线| 久久精品视频在线免费观看| 欧美成人三级在线| 精品少妇一区二区三区在线视频| 91精品国产免费| 6080yy午夜一二三区久久| 欧美日韩成人综合在线一区二区| 欧美亚洲综合一区| 欧美性xxxxxxxx| 欧美视频完全免费看| 色综合av在线| 欧美日韩精品一区二区天天拍小说| 色婷婷av一区二区三区软件| 91日韩一区二区三区| 色素色在线综合| 欧美日本韩国一区二区三区视频 | 丝袜亚洲另类欧美综合| 日韩国产精品大片| 日本欧美一区二区| 久久av中文字幕片| 国产成人在线看| av午夜一区麻豆| 在线观看日韩一区| 91精品国产91久久久久久一区二区 | 国产91丝袜在线播放九色| 国产精品一区二区久久精品爱涩 | 久久精品国产精品亚洲综合| 久久国产精品99久久久久久老狼| 国模冰冰炮一区二区| 国产一区二区成人久久免费影院| 国产999精品久久久久久绿帽| av亚洲精华国产精华精| 在线日韩av片| 日韩女优视频免费观看| 国产香蕉久久精品综合网| 国产精品美女久久久久久 | 久久久www成人免费毛片麻豆| 国产蜜臀97一区二区三区| 日韩毛片在线免费观看| 午夜精品福利一区二区三区av | 久久久国产精品午夜一区ai换脸| 国产精品美日韩| 午夜久久久久久电影| 国产乱对白刺激视频不卡| 一本大道久久a久久综合| 日韩免费电影网站| 国产精品毛片久久久久久久| 亚洲综合图片区| 国产一区二区女| 欧美日韩免费视频| 国产欧美日韩精品在线| 丝袜脚交一区二区| 成人高清免费在线播放| 日韩一级在线观看| 亚洲日本丝袜连裤袜办公室| 日韩高清电影一区| 色综合久久久久综合体桃花网| 欧美一卡二卡三卡四卡| 亚洲视频一区二区免费在线观看 | 99久久免费精品高清特色大片| 欧美久久婷婷综合色| 国产精品三级av在线播放| 日韩激情一二三区| 91丨porny丨最新| 久久久亚洲高清| 青青草原综合久久大伊人精品 | 一区二区三区高清| 国产91丝袜在线18| 欧美精品一区二区三区蜜桃| 亚洲午夜成aⅴ人片| av福利精品导航| 中文天堂在线一区| 国产精品中文字幕一区二区三区| 欧美日韩精品欧美日韩精品一| 国产精品久久久久久久久快鸭| 久久国产精品露脸对白| 制服丝袜av成人在线看| 亚洲精品久久嫩草网站秘色| 不卡一区二区三区四区| 久久精品视频网| 韩国v欧美v日本v亚洲v| 日韩欧美一二三区| 日韩精品乱码av一区二区| 欧美亚洲国产一区在线观看网站| 国产欧美综合色| 懂色av一区二区三区免费看| 久久日一线二线三线suv| 国内外成人在线视频| 6080午夜不卡| 免费观看在线综合色| 欧美一级片在线看| 蜜臀久久99精品久久久久久9|