⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dbresult.java

📁 java版源代码,里面包含很多源代码,大家可以看看.
💻 JAVA
字号:
package com.trulytech.mantis.result;import java.util.ArrayList;import java.util.HashMap;import java.io.Serializable;import com.trulytech.mantis.system.logWriter;/** * <p>Title: DBResult</p> * <p>Description: 查询返回记录集</p> * <p>Copyright: Copyright (c) 2002</p> * <p>Company: trulytech</p> * @author WangXian * @version 1.0 */public class DBResult    implements Serializable {  public String pageSearch = null; //页面form提交的查询数据  public String URLSearch; //URL上除了Page值之外的查询信息  public String TotalPage; //总页数  public String rowsPerPage; //每页的记录数  public String nextPage; //下一页的URL  public String previousPage; //上一页的URL  public String currentPage; //当前页码  public String firstPage; //首页URL  public String lastPage; //尾页URL  public int ColumnCount; //列数  public ArrayList ResultBuffer = null; //查询结果集  public HashMap ParamList = null; //参数列表  public DBResult() {    ResultBuffer = new ArrayList();    TotalPage = "0";    rowsPerPage = "10";    currentPage = "0";    nextPage = "0";    previousPage = "0";    firstPage = "0";    lastPage = "0";    ColumnCount = 0;    pageSearch = "";    URLSearch = "";    ParamList = new HashMap();  }  /**   * 根据给定的行号和列号获得相应的值   * @param col int 列号(从0开始)   * @param rec int 行号(从0开始)   * @return String 如果非法,则返回null   */  public String getValue(int col, int rec) {    if (rec >= ResultBuffer.size())      return null;    else {      ArrayList record = (ArrayList) ResultBuffer.get(rec);      if (col >= record.size())        return null;      else        return ( (DBColumn) record.get(col)).Value;    }  }  /**   * 根据给定的列号获得第一行相应的值   * @param col int 列号   * @return String 如果非法,则返回null   */  public String getValue(int col) {    return getValue(col, 0);  }  /**   * 根据给定的列返回字符串数组   * @param col int   * @return String[] 如果非法则返回null   */  public String[] getValues(int col) {    int nSize = ResultBuffer.size();    if (nSize == 0)      return null;    else {      String[] Ret = new String[nSize];      for (int i = 0; i < nSize; i++) {        ArrayList rec = (ArrayList) ResultBuffer.get(i);        if (col >= rec.size())          return null;        else          Ret[i] = ( (DBColumn) rec.get(col)).Value;      }      return Ret;    }  }  /**   * 根据给定的列返回ArrayList   * @param col int   * @return ArrayList   */  public ArrayList getValueArr(int col) {    ArrayList Ret = new ArrayList();     int nSize = ResultBuffer.size();    for (int i = 0; i < nSize; i++) {      ArrayList rec = (ArrayList) ResultBuffer.get(i);      if (col >= rec.size())        return Ret;      else        Ret.add( ( (DBColumn) rec.get(col)).Value);    }    return Ret;  }  /**   * 根据某一列的值与参数相同的条件获得新的DBResult,但不支持分页   * @param col int   * @param value String   * @return DBResult   */  public DBResult getEqualValue(int col, String value) {    DBResult Ret = new DBResult();    if (value == null)      return Ret;    else {      logWriter.Debug("获得新的结果集(列" + col + "='" + value + "')");       int nSize = ResultBuffer.size();      for (int i = 0; i < nSize; i++) {        ArrayList rec = (ArrayList) ResultBuffer.get(i);        if (col >= rec.size())          return new DBResult();        else {          if ( ( ( (DBColumn) rec.get(col)).Value).equals(value)) {            Ret.ResultBuffer.add(rec);          }        }      }      return Ret;    }  }  /**   * 根据某一列的值与参数不相同的条件获得新的DBResult,但不支持分页   * @param col int   * @param value String   * @return DBResult   */  public DBResult getNotEqualValue(int col,                                   String value) {    DBResult Ret = new DBResult();    if (value == null)      return Ret;    else {      logWriter.Debug("获得新的结果集(列" + col + "!='" + value + "')");      for (int i = 0; i < ResultBuffer.size(); i++) {        ArrayList rec = (ArrayList) ResultBuffer.get(i);        if (col >= rec.size())          return new DBResult();        else {          if (! ( ( (DBColumn) rec.get(col)).Value).equals(value)) {            Ret.ResultBuffer.add(rec);          }        }      }      return Ret;    }  }  /**   * 转换成HasMap   * @return HashMap   */  public HashMap getHashMap() {    HashMap map = new HashMap();     int nSize = ResultBuffer.size();    for (int i = 0; i < nSize; i++) {      ArrayList Rec = (ArrayList) ResultBuffer.get(i);      map.put( ( (DBColumn) Rec.get(0)).Value, ( (DBColumn) Rec.get(1)).Value);    }    return map;  }  /**   * 根据键索引和值索引转换DBResult为HashMap   * @param KeyIndex int   * @param ValueIndex int   * @return HashMap   */  public HashMap getHashMap(int KeyIndex,                            int ValueIndex) {    HashMap map = new HashMap();     int nSize = ResultBuffer.size();    for (int i = 0; i < nSize; i++) {      ArrayList Rec = (ArrayList) ResultBuffer.get(i);      map.put( ( (DBColumn) Rec.get(KeyIndex)).Value,              ( (DBColumn) Rec.get(ValueIndex)).Value);    }    return map;  }  /**   * HTML编码   * @param valueID 需要HTML Encoder的列数组   * @return DBResult 输入结果集合   */  public DBResult HTMLEncoder(int[] valueID) {    if (this != null)      if (this.ResultBuffer != null)      {         int nSize = this.ResultBuffer.size();        for (int i = 0; i < nSize; i++) {          ArrayList rec = (ArrayList)this.ResultBuffer.get(i);          for (int j = 0; j < valueID.length; j++) {            DBColumn dbcol = (DBColumn) rec.get(valueID[j]);            String tmpStr = dbcol.toXML();            dbcol.Value = tmpStr;            rec.set(valueID[j], dbcol);          }          this.ResultBuffer.set(i, rec);        }      }    return this;  }  /**   * toString XML格式   * @return String 值   */  public String toString() {    return toXML();  }  /**   * 生成数组   * @return String[][]   */  public String[][] toArray() {    int nSize=this.ResultBuffer.size();     String[][] ret = new String[nSize][this.ColumnCount];    for (int i = 0; i < nSize; i++) {      ArrayList Rec = (ArrayList)this.ResultBuffer.get(i);      for (int j = 0; j < this.ColumnCount; j++) {        ret[i][j] = ( (DBColumn) Rec.get(j)).Value;      }    }    return ret;  }  /**   * 输出xml格式的字符串   * @return String   */  public String toXML() {    StringBuffer buff = new StringBuffer();    buff.append("<Result>\n");    if (this != null) {      int nSize=this.ResultBuffer.size();      for (int i = 0; i < nSize; i++) {        ArrayList rec = (ArrayList)this.ResultBuffer.get(i);        buff.append("<Record>\n");        for (int j = 0; j < rec.size(); j++) {          DBColumn col = (DBColumn) rec.get(j);          buff.append("<Item");          buff.append(j);          buff.append(">");          buff.append(col.toXML());          buff.append("</Item");          buff.append(j);          buff.append(">\n");        }        buff.append("</Record>\n");      }    }    buff.append("</Result>\n");    return buff.toString();  }  /**   * 分页显示DBResult   * @param page int 页码   * @param len int 页长度   * @return DBResult   */  public DBResult getPageValue(int page, int len) {    DBResult Ret = new DBResult();    if (page < 1)      page = 1;    if (len < 1)      len = 1;    int StartRecord = 0;    Ret.currentPage = String.valueOf(page);    int intTotalPage = ResultBuffer.size() % len == 0 ?        ResultBuffer.size() / len : ResultBuffer.size() / len + 1;    Ret.TotalPage = String.valueOf(intTotalPage);    if (intTotalPage == 0) {      return Ret;    }    else {      if (page >= intTotalPage)        page = intTotalPage;      StartRecord = (page - 1) * len;      logWriter.Debug("获得新的结果集( page=" + page + " pagesize=" + len + ")");      Ret.ColumnCount = this.ColumnCount;      for (int i = StartRecord;           i <           ( ( (StartRecord + len) >= ResultBuffer.size()) ? ResultBuffer.size() :            (StartRecord + len)); i++) {        ArrayList rec = (ArrayList) ResultBuffer.get(i);        Ret.ResultBuffer.add(rec);      }      return Ret;    }  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -