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

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

?? dao.java

?? shopping home JSP system
?? JAVA
字號:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi 
// Source File Name:   DAO.java

package com.keyshop.pub.dao;

import com.keyshop.pub.util.CacheManager;
import java.io.PrintStream;
import java.lang.reflect.InvocationTargetException;
import java.sql.*;
import java.util.*;
import javax.sql.DataSource;
import org.apache.commons.beanutils.BeanUtils;

// Referenced classes of package com.keyshop.pub.dao:
//            DAOCacheManager

public abstract class DAO
{

    protected DataSource ds;
    protected Connection dbCon;

    protected void populate(Object bean, ResultSet rs)
        throws SQLException
    {
        ResultSetMetaData metaData = rs.getMetaData();
        int ncolumns = metaData.getColumnCount();
        HashMap properties = new HashMap();
        for(int i = 1; i <= ncolumns; i++)
            properties.put(sql2javaName(metaData.getColumnName(i)), rs.getString(i));

        try
        {
            BeanUtils.populate(bean, properties);
        }
        catch(InvocationTargetException ite)
        {
            throw new SQLException("BeanUtils.populate threw " + ite.toString());
        }
        catch(IllegalAccessException iae)
        {
            throw new SQLException("BeanUtils.populate threw " + iae.toString());
        }
    }

    public int getSize(String tableName, String condition)
        throws SQLException
    {
        Connection conn;
        PreparedStatement pstmt;
        ResultSet rs;
        conn = null;
        pstmt = null;
        rs = null;
        SQLException sqle;
        int i;
        try
        {
            String sql = "SELECT count(*) FROM " + tableName + " " + condition;
            conn = ds.getConnection();
            pstmt = conn.prepareStatement(sql);
            rs = pstmt.executeQuery();
            rs.next();
            int size = rs.getInt(1);
            close(rs);
            close(pstmt);
            i = size;
        }
        finally
        {
            close(conn);
        }
        return i;
        sqle;
        close(rs);
        close(pstmt);
        rollback(conn);
        sqle.printStackTrace();
        throw sqle;
    }

    public DAO(DataSource ds)
    {
        this.ds = ds;
    }

    public DAO(Connection con)
    {
        dbCon = con;
    }

    public DAO(DataSource ds, Connection con)
    {
        this.ds = ds;
        dbCon = con;
    }

    public void setDataSource(DataSource ds)
    {
        this.ds = ds;
    }

    protected void close(ResultSet rs)
    {
        if(rs != null)
        {
            try
            {
                rs.close();
            }
            catch(SQLException e)
            {
                e.printStackTrace();
            }
            rs = null;
        }
    }

    protected void close(PreparedStatement pstmt)
    {
        if(pstmt != null)
        {
            try
            {
                pstmt.close();
            }
            catch(SQLException e)
            {
                e.printStackTrace();
            }
            pstmt = null;
        }
    }

    protected void close(Connection conn)
    {
        if(conn != null)
        {
            try
            {
                conn.close();
            }
            catch(SQLException e)
            {
                e.printStackTrace();
            }
            conn = null;
        }
    }

    protected void rollback(Connection conn)
    {
        if(conn != null)
        {
            try
            {
                conn.rollback();
            }
            catch(SQLException e)
            {
                e.printStackTrace();
            }
            conn = null;
        }
    }

    protected static String java2sqlName(String name)
    {
        String column = "";
        for(int i = 0; i < name.length(); i++)
            if(i < name.length() - 1 && name.charAt(i) >= 'a' && name.charAt(i) <= 'z' && name.charAt(i + 1) >= 'A' && name.charAt(i + 1) <= 'Z')
                column = column + name.charAt(i) + "_";
            else
                column = column + name.charAt(i);

        return column.toLowerCase();
    }

    protected static String sql2javaName(String name)
    {
        String column = "";
        for(int i = 0; i < name.length(); i++)
            if(name.charAt(i) == '_')
                column = column + (++i >= name.length() ? "" : String.valueOf(name.charAt(i)).toUpperCase());
            else
                column = column + name.charAt(i);

        return column;
    }

    public List list(String model, String sql)
        throws SQLException
    {
        String objKey;
        ArrayList list;
        String objKeys[] = {
            sql
        };
        objKey = CacheManager.createKey(objKeys);
        list = (ArrayList)DAOCacheManager.getCache(objKey);
        if(list != null)
            return list;
        list = new ArrayList();
        Connection conn = null;
        PreparedStatement pstmt = null;
        ResultSet rs = null;
        try
        {
            conn = ds.getConnection();
            pstmt = conn.prepareStatement(sql);
            Object bean;
            for(rs = pstmt.executeQuery(); rs.next(); list.add(bean))
            {
                bean = Class.forName(model).newInstance();
                populate(bean, rs);
            }

            close(rs);
            close(pstmt);
        }
        catch(Exception e)
        {
            close(rs);
            close(pstmt);
            rollback(conn);
            e.printStackTrace();
        }
        finally
        {
            close(conn);
        }
        DAOCacheManager.putCache(list, objKey, 1);
        return list;
    }

    public ResultSet list(String sql)
        throws SQLException
    {
        return null;
    }

    public List search(String model, String sql, List condition)
        throws SQLException
    {
        List list;
        System.out.println("==sql:" + sql);
        list = new ArrayList();
        Connection conn = null;
        PreparedStatement pstmt = null;
        ResultSet rs = null;
        try
        {
            conn = ds.getConnection();
            pstmt = conn.prepareStatement(sql);
            for(int i = 0; i < condition.size(); i++)
                pstmt.setString(i + 1, (String)condition.get(i));

            Object bean;
            for(rs = pstmt.executeQuery(); rs.next(); list.add(bean))
            {
                bean = Class.forName(model).newInstance();
                populate(bean, rs);
            }

            close(rs);
            close(pstmt);
        }
        catch(Exception e)
        {
            close(rs);
            close(pstmt);
            rollback(conn);
            e.printStackTrace();
        }
        finally
        {
            close(conn);
        }
        return list;
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩免费电影| 99麻豆久久久国产精品免费| 亚洲一级电影视频| 日韩电影在线观看一区| 激情久久五月天| 99免费精品在线| 一区二区三区在线视频免费| 韩日精品视频一区| 国产情人综合久久777777| 亚洲三级免费电影| 日本va欧美va精品发布| 在线观看91精品国产入口| 久久综合九色综合97婷婷女人 | 不卡av电影在线播放| 日韩视频免费直播| 日韩一区欧美小说| 成人免费视频一区二区| 欧美大尺度电影在线| 久久色中文字幕| 成人的网站免费观看| 性久久久久久久久| 欧美日本国产一区| 亚洲日韩欧美一区二区在线| 亚洲国产成人午夜在线一区| 欧美影院一区二区三区| 91丨porny丨国产| av电影一区二区| 国产午夜精品一区二区 | 91麻豆精品国产91久久久久| 国产风韵犹存在线视精品| 99国产一区二区三精品乱码| 久久精品免视看| 欧美性视频一区二区三区| 韩国中文字幕2020精品| 亚洲另类中文字| 色菇凉天天综合网| 亚洲天堂网中文字| 麻豆国产精品官网| 51久久夜色精品国产麻豆| 国内外精品视频| 亚洲国产精品久久不卡毛片 | 欧美一级爆毛片| zzijzzij亚洲日本少妇熟睡| 亚洲国产成人va在线观看天堂| 久久影院视频免费| 欧美视频一区二区三区在线观看 | 亚洲高清在线精品| 精品精品国产高清一毛片一天堂| 卡一卡二国产精品| 国产性做久久久久久| 欧美偷拍一区二区| 91原创在线视频| 国产福利一区在线| 久久国产欧美日韩精品| 亚洲国产精品自拍| 一卡二卡三卡日韩欧美| 国产精品视频一二| 欧美性生活久久| 99久久99久久久精品齐齐| 国产乱码精品一区二区三区av | 91精品国产日韩91久久久久久| 老色鬼精品视频在线观看播放| 国产精品久久久爽爽爽麻豆色哟哟| 91麻豆.com| 国产成人亚洲综合色影视| 久久99精品久久久久久动态图| 国产精品午夜久久| 久久精品夜色噜噜亚洲a∨| 欧美一区二区三区在线视频| 欧美浪妇xxxx高跟鞋交| 国产美女视频91| 亚洲精品一二三| 成人欧美一区二区三区白人 | 日韩一区二区高清| 欧美二区三区的天堂| 欧美三级韩国三级日本一级| 国产在线精品视频| 黄页网站大全一区二区| 国产一区日韩二区欧美三区| 国内精品免费在线观看| 国产乱一区二区| 国产精品影视网| 高清成人免费视频| 日韩电影在线观看网站| 奇米一区二区三区| 久久99精品国产麻豆婷婷| 美腿丝袜亚洲三区| 九九国产精品视频| 国产精品99久久久久| 成人美女视频在线观看18| 91玉足脚交白嫩脚丫在线播放| 色婷婷亚洲综合| 国产高清久久久| 成人网页在线观看| 在线亚洲一区观看| 777色狠狠一区二区三区| 日韩午夜精品电影| 国产喷白浆一区二区三区| 国产精品短视频| 一区二区高清免费观看影视大全 | 最新国产精品久久精品| 亚洲乱码一区二区三区在线观看| 亚洲国产乱码最新视频 | 亚洲午夜一区二区| 天堂资源在线中文精品| 久久久久亚洲蜜桃| 精品国产一区久久| 国产精品福利影院| 日韩电影免费在线| 国产精品主播直播| 在线看国产一区| 精品福利视频一区二区三区| 亚洲视频在线一区二区| 午夜精品在线看| 成人深夜福利app| 6080日韩午夜伦伦午夜伦| 久久久99免费| 亚洲图片有声小说| 国产麻豆视频精品| 欧美日韩成人在线一区| 国产亚洲自拍一区| 婷婷成人激情在线网| 国产精品自在欧美一区| 欧美视频一二三区| 国产精品人人做人人爽人人添| 午夜精品久久久久久| 成人开心网精品视频| 91精品国产色综合久久不卡蜜臀 | 久久精品国产精品青草| 97久久超碰精品国产| 精品国产乱子伦一区| 亚洲亚洲人成综合网络| 国产传媒日韩欧美成人| 欧美精品欧美精品系列| 国产精品高潮呻吟| 国产精品一区二区视频| 91精品国产综合久久国产大片| 中文字幕亚洲一区二区av在线| 精品一区二区三区视频在线观看| 日本丶国产丶欧美色综合| 国产欧美一区二区精品性| 蜜臀av性久久久久蜜臀av麻豆| 欧洲日韩一区二区三区| 中文字幕va一区二区三区| 国产毛片一区二区| 91精品国产高清一区二区三区 | 成人黄色av电影| 精品美女在线观看| 日韩国产一二三区| 欧美色国产精品| 亚洲小说春色综合另类电影| 91一区二区三区在线播放| 欧美国产综合一区二区| 国产原创一区二区| 精品国产污污免费网站入口| 日韩激情在线观看| 在线播放亚洲一区| 午夜免费欧美电影| 欧美人与性动xxxx| 亚洲成a人片综合在线| 欧美色手机在线观看| 亚洲永久免费视频| 欧美在线观看禁18| 亚洲一级片在线观看| 欧美日韩一级黄| 天天免费综合色| 日韩午夜av一区| 久久精品国产色蜜蜜麻豆| 亚洲精品在线观看视频| 国产一区免费电影| 日本一区二区三区四区在线视频| 国产精品亚洲一区二区三区在线| 久久久久久久久久久久久久久99 | 日韩—二三区免费观看av| 6080国产精品一区二区| 美国毛片一区二区| 久久日韩粉嫩一区二区三区| 国产suv精品一区二区6| 国产精品美女久久久久aⅴ国产馆| 成人18视频日本| 亚洲天天做日日做天天谢日日欢 | 欧美三级中文字幕| 午夜激情综合网| 欧美va亚洲va香蕉在线| 国产一区二区成人久久免费影院| 国产日本亚洲高清| 91麻豆免费在线观看| 亚洲成人免费在线| 精品成人免费观看| 成人动漫视频在线| 午夜精品一区二区三区三上悠亚| 欧美一区二区三区啪啪| 国产在线不卡一区| 亚洲女人****多毛耸耸8| 国产在线精品一区二区三区不卡| 中文字幕欧美区| 在线观看成人免费视频| 久久国产福利国产秒拍| 亚洲欧洲国产专区| 91精品国产全国免费观看|