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

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

?? objectdb.java

?? cwbbs 云網(wǎng)論壇源碼
?? JAVA
字號:
package cn.js.fan.base;import cn.js.fan.web.Global;import org.apache.log4j.Logger;import java.io.Serializable;import cn.js.fan.resource.Constant;import java.sql.ResultSet;import java.sql.SQLException;import cn.js.fan.db.Conn;import java.util.Vector;import cn.js.fan.db.PrimaryKey;import cn.js.fan.db.KeyUnit;import java.util.Iterator;import java.util.HashMap;import cn.js.fan.util.ErrMsgException;import cn.js.fan.util.ResKeyException;import cn.js.fan.db.ListResult;import cn.js.fan.db.SQLFilter;public abstract class ObjectDb implements Serializable {    public static final PrimaryKey[] EMPTY_BLOCK = new PrimaryKey[0];    public String connname = "";    public transient Logger logger = null;    public String QUERY_LOAD;    public String QUERY_DEL;    public String QUERY_SAVE;    public String QUERY_CREATE;    public String QUERY_LIST;    public boolean isInitFromConfigDB = true;    protected String tableName = "";    public PrimaryKey primaryKey;    public ObjectCache objectCache;    public ObjectDb() {        init();    }        public void init() {        logger = Logger.getLogger(this.getClass().getName());        connname = Global.defaultDB;        if (connname.equals(""))            logger.info(Constant.DB_NAME_NOT_FOUND);        setQueryCreate();        setQuerySave();        setQueryDel();        setQueryLoad();        setQueryList();        initDB();        setPrimaryKey();    }        public void renew() {        if (logger==null) {            logger = Logger.getLogger(this.getClass().getName());        }        if (objectCache!=null) {            objectCache.renew();        }    }        public void initDB() {}    public void setQueryCreate() {}    public void setQuerySave() {};    public void setQueryDel() {};    public void setQueryLoad() {};    public void setQueryList() {};        public void setPrimaryKey() {        if (!isInitFromConfigDB)            return;        DBConfig dc = new DBConfig();        DBTable dt = dc.getDBTable(this.getClass().getName());        if (dt == null) {            logger.info(this +" cann't find table defination in config file.");            return;        }        this.tableName = dt.getName();        this.primaryKey = (PrimaryKey)dt.getPrimaryKey().clone();        this.QUERY_CREATE = dt.getQueryCreate();        this.QUERY_DEL = dt.getQueryDel();        this.QUERY_LIST = dt.getQueryList();        this.QUERY_LOAD = dt.getQueryLoad();        this.QUERY_SAVE = dt.getQuerySave();        this.objectCache = dt.getObjectCache(this);        this.objectCache.setObjCachable(dt.isObjCachable());        this.objectCache.setListCachable(dt.isListCachable());    }        public Object[] getObjectBlock(String query, int startIndex) {        return objectCache.getObjectBlock(query, startIndex);    }        public ObjectDb getObjectDb(Object primaryKeyValue) {                PrimaryKey pk = (PrimaryKey)primaryKey.clone();        pk.setValue(primaryKeyValue);        return objectCache.getObjectDb(pk);    }            public ObjectBlockIterator getObjects(String query,                                         int startIndex,                                         int endIndex) {                Object[] blockValues = getObjectBlock(query, startIndex);        return new ObjectBlockIterator(this, blockValues, query,                                    startIndex, endIndex);    }    public boolean isLoaded() {        return loaded;    }    public void setLoaded(boolean loaded) {        this.loaded = loaded;    }    public int getBlockSize() {        return blockSize;    }    public PrimaryKey getPrimaryKey() {        return primaryKey;    }    public boolean create() throws ErrMsgException, ResKeyException {        return false;    }    abstract public void load() throws ErrMsgException, ResKeyException;    abstract public boolean save() throws ErrMsgException, ResKeyException;    abstract public boolean del() throws ErrMsgException, ResKeyException;        abstract public ObjectDb getObjectRaw(PrimaryKey pk);        public int getObjectCount(String sql) {        return objectCache.getObjectCount(sql);    }    public boolean loaded = false;    public Vector list() {        return list(QUERY_LIST);    }        public Vector list(String QUERY_LIST) {        int total = 0;        ResultSet rs = null;        Vector result = new Vector();        Conn conn = new Conn(connname);        try {                        total = getObjectCount(QUERY_LIST);            conn.prepareStatement(QUERY_LIST);            if (total != 0)                                conn.setMaxRows(total);             rs = conn.executePreQuery();            if (rs == null) {                return result;            } else {                                rs.setFetchSize(total);                 if (rs.absolute(1) == false) {                    return result;                }                do {                    if (primaryKey.getType()==PrimaryKey.TYPE_INT)                        result.addElement(getObjectDb(new Integer(rs.getInt(1))));                    else if (primaryKey.getType()==PrimaryKey.TYPE_STRING)                        result.addElement(getObjectDb(rs.getString(1)));                    else if (primaryKey.getType()==PrimaryKey.TYPE_LONG)                        result.add(getObjectDb(new Long(rs.getLong(1))));                    else if (primaryKey.getType() == PrimaryKey.TYPE_COMPOUND) {                        HashMap keys = ((PrimaryKey)primaryKey.clone()).getKeys();                        Iterator ir = keys.keySet().iterator();                        while (ir.hasNext()) {                            String keyName = (String) ir.next();                            KeyUnit ku = (KeyUnit) keys.get(keyName);                            if (ku.getType() == primaryKey.TYPE_INT) {                                ku.setValue(new Integer(rs.getInt(ku.getOrders() + 1)));                            } else if (ku.getType() == primaryKey.TYPE_LONG) {                                ku.setValue(new Long(rs.getLong(ku.getOrders() + 1)));                            } else {                                ku.setValue(rs.getString(ku.getOrders() + 1));                            }                        }                        result.addElement(getObjectDb(keys));                    }                } while(rs.next());            }        } catch (SQLException e) {            logger.error("list: " + e.getMessage());        } finally {            if (conn != null) {                conn.close();                conn = null;            }        }        return result;    }    public Vector list(int start, int end) {        return list(QUERY_LIST, start, end);    }        public Vector list(String sql, int start, int end) {        int total = 0;        ResultSet rs = null;        Vector result = new Vector();        Conn conn = new Conn(connname);        try {                        total = getObjectCount(sql);            conn.prepareStatement(sql);            if (total != 0)                                conn.setMaxRows(end + 1);             rs = conn.executePreQuery();            if (rs == null) {                return result;            } else {                                int count = end - start + 1;                rs.setFetchSize(count);                 if (rs.absolute(start + 1) == false) {                    return result;                }                int k = 0;                do {                    if (primaryKey.getType()==PrimaryKey.TYPE_INT)                        result.addElement(getObjectDb(new Integer(rs.getInt(1))));                    else if (primaryKey.getType()==PrimaryKey.TYPE_STRING)                        result.addElement(getObjectDb(rs.getString(1)));                    else if (primaryKey.getType()==PrimaryKey.TYPE_LONG) {                                                result.addElement(getObjectDb(new Long(rs.getLong(1))));                    }                    else if (primaryKey.getType() == PrimaryKey.TYPE_COMPOUND) {                        HashMap keys = ((PrimaryKey)primaryKey.clone()).getKeys();                        Iterator ir = keys.keySet().iterator();                        while (ir.hasNext()) {                            String keyName = (String) ir.next();                            KeyUnit ku = (KeyUnit) keys.get(keyName);                            if (ku.getType() == primaryKey.TYPE_INT) {                                ku.setValue(new Integer(rs.getInt(ku.getOrders() + 1)));                            } else if (ku.getType() == primaryKey.TYPE_LONG) {                                ku.setValue(new Long(rs.getLong(ku.getOrders() + 1)));                            } else {                                ku.setValue(rs.getString(ku.getOrders() + 1));                            }                        }                        result.addElement(getObjectDb(keys));                    }                    k++;                                                        } while(rs.next());            }        } catch (SQLException e) {            logger.error("list: " + e.getMessage());        } finally {            if (conn != null) {                conn.close();                conn = null;            }        }        return result;    }        public ListResult listResult(String listsql, int curPage, int pageSize) throws             ErrMsgException {         int total = 0;         ResultSet rs = null;         Vector result = new Vector();         ListResult lr = new ListResult();         lr.setTotal(total);         lr.setResult(result);         Conn conn = new Conn(connname);         try {                          String countsql = SQLFilter.getCountSql(listsql);             rs = conn.executeQuery(countsql);             if (rs != null && rs.next()) {                 total = rs.getInt(1);             }             if (rs != null) {                 rs.close();                 rs = null;             }                          int totalpages = (int) Math.ceil((double) total / pageSize);             if (curPage > totalpages)                 curPage = totalpages;             if (curPage <= 0)                 curPage = 1;             if (total != 0)                 conn.setMaxRows(curPage * pageSize);              rs = conn.executeQuery(listsql);             if (rs == null) {                 return lr;             } else {                 rs.setFetchSize(pageSize);                 int absoluteLocation = pageSize * (curPage - 1) + 1;                 if (rs.absolute(absoluteLocation) == false) {                     return lr;                 }                 do {                     if (primaryKey.getType()==PrimaryKey.TYPE_INT) {                         result.addElement(getObjectDb(new Integer(rs.getInt(1))));                     }                     else if (primaryKey.getType()==PrimaryKey.TYPE_STRING)                         result.addElement(getObjectDb(rs.getString(1)));                     else if (primaryKey.getType()==PrimaryKey.TYPE_LONG)                         result.addElement(getObjectDb(new Long(rs.getLong(1))));                     else if (primaryKey.getType() == PrimaryKey.TYPE_COMPOUND) {                         HashMap keys = ((PrimaryKey)primaryKey.clone()).getKeys();                         Iterator ir = keys.keySet().iterator();                         while (ir.hasNext()) {                             String keyName = (String) ir.next();                             KeyUnit ku = (KeyUnit) keys.get(keyName);                             if (ku.getType() == primaryKey.TYPE_INT) {                                 ku.setValue(new Integer(rs.getInt(ku.getOrders() + 1)));                             } else if (ku.getType() == primaryKey.TYPE_LONG ) {                                 ku.setValue(new Long(rs.getLong(ku.getOrders() + 1)));                             } else {                                 ku.setValue(rs.getString(ku.getOrders() + 1));                             }                         }                         result.addElement(getObjectDb(keys));                     }                 } while (rs.next());             }         } catch (SQLException e) {             logger.error("listResult:" + e.getMessage());             throw new ErrMsgException("Db error.");         } finally {             if (rs != null) {                 try {                     rs.close();                 } catch (Exception e) {}                 rs = null;             }             if (conn != null) {                 conn.close();                 conn = null;             }         }         lr.setResult(result);         lr.setTotal(total);         return lr;    }        public void setBlockSize(int blockSize) {        this.blockSize = blockSize;    }    public String getTableName() {        return tableName;    }    private int blockSize = 100;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久综合视频网| 成人亚洲一区二区一| 欧美日韩国产一级| 午夜视频在线观看一区二区三区| 91国偷自产一区二区开放时间| 亚洲人成亚洲人成在线观看图片| jlzzjlzz亚洲女人18| 亚洲三级在线看| 欧美午夜寂寞影院| 日韩电影在线免费| wwwwww.欧美系列| 成人激情免费电影网址| 亚洲美女免费在线| 在线不卡一区二区| 国产一区二区三区免费观看| 国产欧美日产一区| 在线精品视频一区二区| 日本不卡不码高清免费观看| 日韩精品专区在线影院重磅| 国产成人av电影免费在线观看| 欧美精品一区二区三区四区| 成人高清视频在线| 亚洲国产日韩一区二区| 91精品国产色综合久久不卡电影| 看电影不卡的网站| 国产精品久久午夜| 9191久久久久久久久久久| 国产精品88888| 亚洲一线二线三线久久久| 欧美特级限制片免费在线观看| 热久久久久久久| 国产精品私人影院| 欧美理论片在线| 粉嫩在线一区二区三区视频| 舔着乳尖日韩一区| 日本一区二区成人在线| 欧美日韩国产在线播放网站| 国产成人在线视频网站| 午夜欧美一区二区三区在线播放| 国产色91在线| 91精品国产综合久久婷婷香蕉| 国产91精品一区二区麻豆亚洲| 亚洲va在线va天堂| 日本一区二区三区电影| 51午夜精品国产| av欧美精品.com| 狠狠色伊人亚洲综合成人| 亚洲综合999| 中文字幕国产精品一区二区| 欧美一区二区福利视频| 一本久久精品一区二区| 国产馆精品极品| 久久国产精品99久久久久久老狼| 亚洲六月丁香色婷婷综合久久| 26uuu另类欧美| 欧美一区二区三区四区五区 | 91麻豆精品国产91久久久久| 粉嫩av一区二区三区在线播放| 日韩国产在线观看一区| 亚洲乱码国产乱码精品精98午夜| 国产欧美日韩亚州综合| 欧美电影免费观看高清完整版在 | 91精品国产综合久久小美女| 一本到高清视频免费精品| 成人激情小说网站| 国产精品一区二区免费不卡| 久久99国产乱子伦精品免费| 午夜免费久久看| 午夜av一区二区三区| 亚洲与欧洲av电影| 一区二区三区四区av| 1024成人网| 亚洲欧美日韩中文字幕一区二区三区| 国产日本一区二区| 久久亚洲一区二区三区四区| 欧美一级高清大全免费观看| 欧美精品粉嫩高潮一区二区| 欧美日韩国产另类一区| 欧美在线free| 欧美三级资源在线| 欧美日韩在线一区二区| 欧美老人xxxx18| 日韩三级伦理片妻子的秘密按摩| 欧美一区二区在线观看| 日韩欧美国产综合| 精品久久久三级丝袜| 精品国产乱码久久久久久久| 久久久另类综合| 国产女同性恋一区二区| 中文字幕日本不卡| 亚洲欧美日韩成人高清在线一区| 亚洲人午夜精品天堂一二香蕉| 亚洲天堂av老司机| 亚洲一区自拍偷拍| 日韩经典一区二区| 色综合色狠狠综合色| 91浏览器打开| 欧美日韩一级二级| 日韩精品在线看片z| 久久青草国产手机看片福利盒子| 中文字幕免费不卡| 亚洲精品乱码久久久久久黑人| 亚洲综合丁香婷婷六月香| 欧美aaaaaa午夜精品| 国模冰冰炮一区二区| av日韩在线网站| 欧美一区二区三区在线视频| 国产午夜精品理论片a级大结局| 中文字幕在线不卡一区二区三区| 亚洲精品第一国产综合野| 亚洲成人av中文| 国产一区二区三区免费在线观看| 99re成人精品视频| 欧美电影在哪看比较好| 国产午夜亚洲精品羞羞网站| 亚洲精品日日夜夜| 九色|91porny| 91视频.com| 久久综合九色综合欧美就去吻 | 精品亚洲aⅴ乱码一区二区三区| 国产suv精品一区二区883| 欧美日韩一二三| 久久久另类综合| 五月天欧美精品| 暴力调教一区二区三区| 欧美高清一级片在线| 国产精品久久三区| 久久99精品一区二区三区三区| 99综合影院在线| 精品国产网站在线观看| 一级日本不卡的影视| 国产美女精品人人做人人爽| 欧美综合一区二区| 久久久久久久网| 五月婷婷久久丁香| 99久久精品国产麻豆演员表| 精品国产露脸精彩对白| 亚洲h在线观看| 99re66热这里只有精品3直播| 久久综合久久综合久久综合| 天堂影院一区二区| 91免费精品国自产拍在线不卡| 精品国产免费视频| 亚洲成av人片一区二区| 一本大道久久a久久综合婷婷| 久久婷婷色综合| 日本美女一区二区三区| 欧美私模裸体表演在线观看| 中文字幕一区二区三| 国产在线观看免费一区| 日韩欧美国产成人一区二区| 午夜欧美电影在线观看| 欧美午夜精品电影| 亚洲在线视频一区| 色婷婷av一区二区三区软件| 国产人成亚洲第一网站在线播放| 国产在线观看一区二区| 欧美成人一区二区三区在线观看 | 精彩视频一区二区三区| 欧美一区二区不卡视频| 视频一区国产视频| 欧美视频一区二区三区四区| 一区二区高清在线| 色哟哟日韩精品| 亚洲欧美国产三级| 91一区在线观看| 一区二区三区影院| 欧美最新大片在线看| 亚洲一区二区三区四区不卡| 欧美日韩中字一区| 视频一区免费在线观看| 日韩午夜精品视频| 久久狠狠亚洲综合| 日韩欧美一级二级三级久久久| 麻豆国产欧美日韩综合精品二区 | 国产一区二区精品久久| 2021国产精品久久精品| 国产一区二区视频在线| 国产亚洲欧美日韩日本| 丰满亚洲少妇av| 亚洲激情自拍视频| 色狠狠av一区二区三区| 亚洲综合色自拍一区| 欧美精品久久99| 免费成人性网站| 国产日产欧美一区二区三区| www.视频一区| 亚洲成人精品一区二区| 欧美一区二区精美| 成人综合在线网站| 亚洲黄色尤物视频| 欧美一区日本一区韩国一区| 国产美女主播视频一区| 亚洲欧美怡红院| 在线成人av网站| 国产成人一级电影| 艳妇臀荡乳欲伦亚洲一区| 日韩一区二区影院| 成人性生交大合| 亚洲图片欧美视频|