??xml version="1.0" encoding="utf-8" standalone="yes"?>97精品在线视频,亚洲黄色大片,视频一区在线播放http://www.aygfsteel.com/keweibo/category/25830.htmlAs long as you are there to lead me ,I won't lose my way zh-cnMon, 21 Apr 2008 06:53:07 GMTMon, 21 Apr 2008 06:53:07 GMT60用Spring的JdbcTemplate实现分页功能http://www.aygfsteel.com/keweibo/articles/194354.htmlKEKESun, 20 Apr 2008 11:32:00 GMThttp://www.aygfsteel.com/keweibo/articles/194354.htmlhttp://www.aygfsteel.com/keweibo/comments/194354.htmlhttp://www.aygfsteel.com/keweibo/articles/194354.html#Feedback0http://www.aygfsteel.com/keweibo/comments/commentRss/194354.htmlhttp://www.aygfsteel.com/keweibo/services/trackbacks/194354.htmlOracle数据库,使用伪列ROWNUM来实现分c分代码如下:
  
  package com.deity.ranking.util;
        import java.util.List;
  import org.springframework.jdbc.core.JdbcTemplate;
  import org.springframework.jdbc.core.support.JdbcDaoSupport;
  /** * 分页函数 * 
        * @author allenpan */
public class Pagination extends JdbcDaoSupport{
  public static final int NUMBERS_PER_PAGE = 10;
  //一|C的记录?br />   private int numPerPage;
  //记录L
  private int totalRows;
  //总页?br />   private int totalPages;
  //当前늠
  private int currentPage;
  //起始行数
  private int startIndex;
  //l束行数
  private int lastIndex;
  //l果集存放List
  private List resultList;
  //JdbcTemplate jTemplate
  private JdbcTemplate jTemplate;
  /**
  * 每页昄10条记录的构造函?使用该函数必dlPagination讄currentPageQjTemplate初?br />   * @param sql oracle语句
  */
  public Pagination(String sql){
  if(jTemplate == null){
  throw new IllegalArgumentException("com.deity.ranking.util.Pagination.jTemplate is null,please initial it first. ");
  }else if(sql.equals("")){
  throw new IllegalArgumentException("com.deity.ranking.util.Pagination.sql is empty,please initial it first. ");
  }
  new Pagination(sql,currentPage,NUMBERS_PER_PAGE,jTemplate);
  }
  /**分页构造函?br />   * @param sql Ҏ传入的sql语句得到一些基本分信?br />   * @param currentPage 当前?br />   * @param numPerPage 每页记录?br />   * @param jTemplate JdbcTemplate实例
  */
  public Pagination(String sql,int currentPage,int numPerPage,JdbcTemplate jTemplate){
  if(jTemplate == null){
  throw new IllegalArgumentException("com.deity.ranking.util.Pagination.jTemplate is null,please initial it first. ");
  }else if(sql == null || sql.equals("")){
  throw new IllegalArgumentException("com.deity.ranking.util.Pagination.sql is empty,please initial it first. ");
  }
  //讄每页昄记录?br />   setNumPerPage(numPerPage);
  //讄要显C的|
  setCurrentPage(currentPage);
  //计算总记录数
  StringBuffer totalSQL = new StringBuffer(" SELECT count(*) FROM ( ");
  totalSQL.append(sql);
  totalSQL.append(" ) totalTable ");
  //lJdbcTemplate赋?br />   setJdbcTemplate(jTemplate);
  //总记录数
  setTotalRows(getJdbcTemplate().queryForInt(totalSQL.toString()));
  //计算总页?br />   setTotalPages();
  //计算起始行数
  setStartIndex();
  //计算l束行数
  setLastIndex();
  System.out.println("lastIndex="+lastIndex);//////////////////
  //构造oracle数据库的分页语句
  StringBuffer paginationSQL = new StringBuffer(" SELECT * FROM ( ");
  paginationSQL.append(" SELECT temp.* ,ROWNUM num FROM ( ");
  paginationSQL.append(sql);
  paginationSQL.append(" ) temp where ROWNUM <= " + lastIndex);
  paginationSQL.append(" ) WHERE num > " + startIndex);
  //装入l果?br />   setResultList(getJdbcTemplate().queryForList(paginationSQL.toString()));
  }
  /**
  * @param args
  */
  public static void main(String[] args) {
  // TODO Auto-generated method stub    }
  public int getCurrentPage() {
  return currentPage;
  }
  public void setCurrentPage(int currentPage) {
  this.currentPage = currentPage;
  }
  public int getNumPerPage() {
  return numPerPage;
  }
  public void setNumPerPage(int numPerPage) {
  this.numPerPage = numPerPage;
  }
  public List getResultList() {
  return resultList;    }
  public void setResultList(List resultList) {
  this.resultList = resultList;
  }
  public int getTotalPages() {
  return totalPages;
  }
  //计算总页?br />   public void setTotalPages() {
  if(totalRows % numPerPage == 0){
  this.totalPages = totalRows / numPerPage;
  }else{
  this.totalPages = (totalRows / numPerPage) + 1;
  }
  }
  public int getTotalRows() {
  return totalRows;
  }
  public void setTotalRows(int totalRows) {
  this.totalRows = totalRows;
  }
  public int getStartIndex() {
  return startIndex;
  }
  public void setStartIndex() {
  this.startIndex = (currentPage - 1) * numPerPage;
  }
  public int getLastIndex() {
  return lastIndex;
  }
  public JdbcTemplate getJTemplate() {
  return jTemplate;
  }
  public void setJTemplate(JdbcTemplate template) {
  jTemplate = template;
  }
  //计算l束时候的索引
  public void setLastIndex() {
  System.out.println("totalRows="+totalRows);///////////
  System.out.println("numPerPage="+numPerPage);///////////
  if( totalRows < numPerPage){
  this.lastIndex = totalRows;
  }else if((totalRows % numPerPage == 0) || (totalRows % numPerPage != 0 && currentPage < totalPages)){
  this.lastIndex = currentPage * numPerPage;
  }else if(totalRows % numPerPage != 0 && currentPage == totalPages){//最后一?br />   this.lastIndex = totalRows ;
  }
  }}在我的业务逻辑代码中:
  /**
  * find season ranking list from DC
  * @param areaId 选手区域id
  * @param rankDate 赛季
  * @param category cd
  * @param characterName 角色?br />   * @return List
  */
  public List findSeasonRankingList(Long areaId, int rankYear,int rankMonth,
  Long categoryId,String characterName) {
  //SQL语句
  StringBuffer sql = new StringBuffer(" SELECT C.USERID userid,D.POSNAME posname,C.GAMEID gameid,C.AMOUNT amount,C.RANK rank FROM ");
  //表            sql.append(" (SELECT B.USERID USERID,");
  sql.append(" B.POSID POSID,");
  sql.append(" A.DISTRICT_CODE DISTRICTCODE,");
  sql.append(" A.GAMEID GAMEID,");
  sql.append(" AMOUNT AMOUNT,");
  sql.append(" RANK RANK ");
  sql.append(" FROM TB_FS_RANK A ");
  sql.append(" LEFT JOIN TB_CHARACTER_INFO B ");
  sql.append(" ON A.DISTRICT_CODE = B.DISTRICT_CODE ");
  sql.append(" AND A.GAMEID = B.GAMEID ");
  //附加条g
  if(areaId != null && areaId.intValue() != 0){
  sql.append(" and A.DISTRICT_CODE = " + areaId.intValue());
  }
  if( rankYear > 1970 && rankMonth > 0){
  //hql.append(" and sas.id.dt >= to_date('" + rankYear + "-" + rankMonth + "-01 00:00:00'," + "YYYY-MM-DD HH24:MI:SS");
  //hql.append(" and sas.id.dt <= to_date('" + rankYear + "-" + rankMonth + "-" + TimeTool.findMaxDateInMonth(rankYear,rankMonth) + " 23:59:59'," + "YYYY-MM-DD HH24:MI:SS");
  sql.append(" and A.DT = fn_time_convert(to_date('" + rankYear + "-" + rankMonth + "'," + "'YYYY-MM')) ");
  }
  if(categoryId != null && categoryId.intValue() != 0){
  sql.append(" and A.CID = " + categoryId.intValue());
  }
  if(characterName != null && !characterName.trim().equals("")){
  sql.append(" and A.GAMEID = '" + characterName.trim()+"' ");
  }
  sql.append(" ORDER BY RANK ASC) C ");
  sql.append(" LEFT JOIN TB_FS_POSITION D ");
  sql.append(" ON C.POSID = D.POSID ");
  sql.append(" ORDER BY C.RANK ");
  System.out.println("hql="+sql.toString());////////////////
  //使用自己的分늨序控制结果集
  Pagination pageInfo = new Pagination(sql.toString(),1,10,getJdbcTemplate());
  return pageInfo.getResultList();
  //return getJdbcTemplate().queryForList(sql.toString());
  }
文章來源Qhttp://java.chinaitlab.com/Spring/38091.html

KE 2008-04-20 19:32 发表评论
]]>
JDBC分頁示Q轉Q?/title><link>http://www.aygfsteel.com/keweibo/articles/191478.html</link><dc:creator>KE</dc:creator><author>KE</author><pubDate>Tue, 08 Apr 2008 06:33:00 GMT</pubDate><guid>http://www.aygfsteel.com/keweibo/articles/191478.html</guid><wfw:comment>http://www.aygfsteel.com/keweibo/comments/191478.html</wfw:comment><comments>http://www.aygfsteel.com/keweibo/articles/191478.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/keweibo/comments/commentRss/191478.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/keweibo/services/trackbacks/191478.html</trackback:ping><description><![CDATA[<p><span style="color: red">一个承ArrayListcȝResultSetQ一个承HashMap的Record</span></p> <p><span style="color: red">执行Q把java.sql.ResultSet对象中的一列封装成Record,加到ArrayListcd的ResultSet对象?/span><br />  /**<br />      * 执行 SQL 语句 (带分功?<br />      * @param con 数据库链?Connection<br />      * @param strSQL SQL语句<br />      * @param nCommonPageSize 每页最大记录数<br />      * @param nCurrentPage 当前号<br />      * @param nTotalRecordCount 总记录数, 如果{于 -1 或小?0, 则由本函数相x法得到此?br />      * @param obj 字段对象<br />      * @return 如果执行的是查询操作(select ...), 成功q回装?RecordSet 的记录集, 异常或失败返?null<br />      *  如果执行的是写操? 成功q回I的 RecordSet(含操作的记录个数), 异常或失败返?null<br />      */<br />     public static RecordSet executeWithDefaultDriver(Connection con, String strSQL, int nCommonPageSize, int nCurrentPage, int nTotalRecordCount, Object[] obj)<br />     {<br />       PreparedStatement ps = null;<br />       try<br />       {<br />         if(nCommonPageSize<=0)<br />           throw new Exception("记录数于 0: (" + nCommonPageSize + " 条记??");<br />         if(nCurrentPage<=0)<br />           throw new Exception("|于 0: (W?" + nCurrentPage + " ?");<br />         RecordSet set = new RecordSet();<br />         strSQL = strSQL.trim();<br />         ps = con.prepareStatement(strSQL, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);<br />         //讄字段?br />         setFieldValue(ps, obj, strSQL);<br />         //判断是否为查?SQL, q是更新 SQL<br />         if(strSQL.substring(0, strSQL.indexOf(" ")).equalsIgnoreCase("SELECT"))<br />         {<br />           ResultSet rs = ps.executeQuery();<br />           ResultSetMetaData rsmd = rs.getMetaData();<br />           int nColumn = rsmd.getColumnCount();<br />           //Udl果集最后一? 取得记录L<br />           set.CURRENT_PAGE = nCurrentPage;<br />           set.COMMON_PAGE_SIZE = nCommonPageSize;<br />           if(nTotalRecordCount>=0)<br />             set.TOTAL_RECORD_COUNT = nTotalRecordCount;<br />           else<br />           {<br />             rs.last();<br />             set.TOTAL_RECORD_COUNT = rs.getRow();<br />           }<br />           set.TOTAL_PAGE = (set.TOTAL_RECORD_COUNT + nCommonPageSize - 1) / nCommonPageSize;<br />           if(nCurrentPage==set.TOTAL_PAGE && set.TOTAL_RECORD_COUNT%nCommonPageSize!=0)<br />             set.CURRENT_PAGE_SIZE = set.TOTAL_RECORD_COUNT % nCommonPageSize;<br />           else<br />             set.CURRENT_PAGE_SIZE = nCommonPageSize;<br />           if(set.TOTAL_RECORD_COUNT==0)<br />             return set;<br />           //定位到当前页的页?br />           rs.absolute(nCommonPageSize * (nCurrentPage - 1) + 1);<br />           do<br />           {<br />             Record record = new Record();<br />             for(int i=0;i<nColumn;i++)<br />             {<br />               String strField = rsmd.getColumnName(i+1).toUpperCase();<br />               record.put(strField, rs.getObject(i+1));<br />             }<br />             set.add(record);<br />           }<br />           while(rs.getRow()<nCommonPageSize*nCurrentPage && rs.next());<br />           rs.close();<br />         }<br />         else<br />           set.TOTAL_RECORD_COUNT = ps.executeUpdate();<br />         return set;<br />       }<br />       catch(Exception e)<br />       {<br />         e.printStackTrace();<br />         return null;<br />       }<br />       finally<br />       {<br />         try<br />         {<br />           if(ps!=null)<br />             ps.close();<br />         }<br />         catch(Exception e){}<br />       }<br />     }</p> <p><span style="color: red">静态方法直接调用,q回RS</span></p> <p><span style="color: red">调用</span><br />  Record record =(Record)rs.get(i);<br />  String code=record.getString("code");</p> <p><span style="color: red">取翻信?/span><br /> <td valign="middle" align="right">每页<%=rs.COMMON_PAGE_SIZE%>?br />  ?lt;%=rs.TOTAL_RECORD_COUNT%>?br />  W?lt;%=rs.CURRENT_PAGE%>?br />  ?lt;%=rs.TOTAL_PAGE%>?br />  <BR><br />  <%if(rs.CURRENT_PAGE==1){ out.print(" 首页 上一?);   }else{  %><br />  <A HREF="javascript:gotoPage(1)">首页</A><br />  <A HREF="javascript:gotoPage(<%=rs.CURRENT_PAGE-1%>)">上一?lt;/A><br />  <%}%><br />  <%if(rs.CURRENT_PAGE==rs.TOTAL_PAGE){ out.print("下一?N");   }else{  %><br />  <A HREF="javascript:gotoPage(<%=rs.CURRENT_PAGE+1%>)">下一?lt;/A><br />  <A HREF="javascript:gotoPage(<%=rs.TOTAL_PAGE%>)">N</A><br />  <%}%><br />  转到W?lt;SELECT name="jumpPage" onchange="Jumping()"><br />     <% for(int i=1;i<=rs.TOTAL_PAGE;i++)  {<br />     if (i== rs.CURRENT_PAGE){<br />     %><br />     <OPTION selected value=<%=i%>><%=i%></OPTION><br />     <%}else{%><br />     <OPTION value=<%=i%>><%=i%></OPTION><br />     <%}}%><br />     </SELECT>?br /> </td></p> <p><br /> <span style="color: red">//////////////////////////////////RecordSet.java///////////////////////////////////////<br /> </span>import java.util.*;</p> <p>public class RecordSet<br />     extends ArrayList {</p> <p>  // 记录集信?br />   /** 总页?*/<br />   public int TOTAL_PAGE = -1;<br />   /** 当前号 */<br />   public int CURRENT_PAGE = -1;<br />   /** 每页最大记录数 */<br />   public int COMMON_PAGE_SIZE = -1;<br />   /** 当前|含记录数 */<br />   public int CURRENT_PAGE_SIZE = -1;<br />   /** 总记录数 */<br />   public int TOTAL_RECORD_COUNT = -1;</p> <p>  /** 当前指向的记录位|?( 初始位置在第一条记录之前的IZ?) */<br />   private int currentRecordRow = 0;</p> <p>  /**<br />    * 取得当前记录的位|?br />    * @return 记录的位|?br />    */<br />   public int getRow() {<br />     return currentRecordRow;<br />   }</p> <p>  /**<br />    * 得到Wn条记?br />    * @param i 记录位置 ( 取D? 1--q回的记录数 )<br />    * @return 成功q回记录, 异常或失败返?false<br />    */<br />   public Record getRecord(int i) {<br />     try {<br />       return (Record)this.get(i - 1);<br />     }<br />     catch (Exception e) {<br />       //Log.error(e);<br />       return null;<br />     }<br />   }</p> <p>  /**<br />    * 得到当前记录<br />    * @return 成功q回记录, 异常或失败返?false<br />    */<br />   public Record getRecord() {<br />     if (isBeforeFirst()) {<br />       //Log.warn("指针在初始位|? 请?first() ?next() Ҏ指针指向第一条记?);<br />       return null;<br />     }<br />     if (isAfterLast()) {<br />       //Log.warn("指针在结束位|? 请?first() Ҏ指针指向第一条记?);<br />       return null;<br />     }<br />     return getRecord(currentRecordRow);<br />   }</p> <p>  /**<br />    * 定位到绝对位|的记录<br />    * @param row 记录位置 ( 0--q回的记录数+1 )<br />    * @return 成功q回 true, 异常或失败返?false<br />    */<br />   public boolean absolute(int row) {<br />     if (0 <= row && row <= this.size() + 1) {<br />       currentRecordRow = row;<br />       return true;<br />     }<br />     else {<br />       return false;<br />     }<br />   }</p> <p>  /**<br />    * 定位到首条记录之?br />    */<br />   public void beforeFirst() {<br />     currentRecordRow = 0;<br />   }</p> <p>  /**<br />    * 定位到末条记录之?br />    */<br />   public void afterLast() {<br />     currentRecordRow = this.size() + 1;<br />   }</p> <p>  /**<br />    * 定位到首条记?br />    * @return 成功q回 true, p|q回 false<br />    */<br />   public boolean first() {<br />     if (this.isEmpty()) {<br />       return false;<br />     }<br />     else {<br />       currentRecordRow = 1;<br />       return true;<br />     }<br />   }</p> <p>  /**<br />    * 定位到末条记?br />    * @return 成功q回 true, p|q回 false<br />    */<br />   public boolean last() {<br />     if (this.isEmpty()) {<br />       return false;<br />     }<br />     else {<br />       currentRecordRow = this.size();<br />       return true;<br />     }<br />   }</p> <p>  /**<br />    * 是否在首条记录之?br />    * @return 是返?true, 否返?false<br />    */<br />   public boolean isBeforeFirst() {<br />     if (currentRecordRow == 0) {<br />       return true;<br />     }<br />     else {<br />       return false;<br />     }<br />   }</p> <p>  /**<br />    * 是否在末条记录之?br />    * @return 是返?true, 否返?false<br />    */<br />   public boolean isAfterLast() {<br />     if (currentRecordRow == this.size() + 1) {<br />       return true;<br />     }<br />     else {<br />       return false;<br />     }<br />   }</p> <p>  /**<br />    * 是否位于首条记录<br />    * @return 是返?true, 否返?false<br />    */<br />   public boolean isFirst() {<br />     if (this.isEmpty()) {<br />       return false;<br />     }<br />     else {<br />       if (currentRecordRow == 1) {<br />         return true;<br />       }<br />       else {<br />         return false;<br />       }<br />     }<br />   }</p> <p>  /**<br />    * 是否位于末条记录<br />    * @return 是返?true, 否返?false<br />    */<br />   public boolean isLast() {<br />     if (this.isEmpty()) {<br />       return false;<br />     }<br />     else {<br />       if (currentRecordRow == this.size()) {<br />         return true;<br />       }<br />       else {<br />         return false;<br />       }<br />     }<br />   }</p> <p>  /**<br />    * 定位到前一条记?br />    * @return 成功q回 true, p|q回 false<br />    */<br />   public boolean previous() {<br />     if (currentRecordRow < 1) {<br />       return false;<br />     }<br />     else {<br />       currentRecordRow--;<br />       if (currentRecordRow < 1) {<br />         return false;<br />       }<br />       else {<br />         return true;<br />       }<br />     }<br />   }</p> <p>  /**<br />    * 定位到后一条记?br />    * @return 成功q回 true, p|q回 false<br />    */<br />   public boolean next() {<br />     if (currentRecordRow > this.size()) {<br />       return false;<br />     }<br />     else {<br />       currentRecordRow++;<br />       if (currentRecordRow > this.size()) {<br />         return false;<br />       }<br />       else {<br />         return true;<br />       }<br />     }<br />   }</p> <p>  /**<br />    * 得到数字(推荐使用q个Ҏ得到数字, 可以避免各种数据库数据类型不同而生的问题)<br />    * @param key 字段?br />    * @return 数字<br />    */<br />   public double getNumber(String key) {<br />     return Double.parseDouble(getString(key));<br />   }</p> <p>  /**<br />    * 得到 String cd的??getObject Ҏ取得, q用了 trim ҎL两端I格, 当对象ؓI时q回I字W串)<br />    * @param key 字段?br />    * @return String cd的?br />    */<br />   public String getString(String key) {<br />     Object obj = this.getRecord().getObject(key);<br />     if (obj == null) {<br />       return "";<br />     }<br />     else {<br />       return obj.toString().trim();<br />     }<br />   }</p> <p>  /**<br />    * 得到 Timestamp cd的?br />    * @param key 字段?br />    * @return Timestamp cd的?br />    */<br />   public java.sql.Timestamp getTimestamp(String key) {<br />     return this.getRecord().getTimestamp(key);<br />   }</p> <p>  /**<br />    * 得到 Date cd的?br />    * @param key 字段?br />    * @return Date cd的?br />    */<br />   public java.sql.Date getDate(String key) {<br />     return this.getRecord().getDate(key);<br />   }</p> <p>  /**<br />    * 得到 Time cd的?br />    * @param key 字段?br />    * @return Time cd的?br />    */<br />   public java.sql.Time getTime(String key) {<br />     return this.getRecord().getTime(key);<br />   }</p> <p>  /**<br />    * 得到 BigDecimal cd的?br />    * @param key 字段?br />    * @return BigDecimal cd的?br />    */<br />   public java.math.BigDecimal getBigDecimal(String key) {<br />     return this.getRecord().getBigDecimal(key);<br />   }</p> <p>  /**<br />    * 得到 long cd的?br />    * @param key 字段?br />    * @return long cd的?br />    */<br />   public long getLong(String key) {<br />     return this.getRecord().getLong(key).longValue();<br />   }</p> <p>  /**<br />    * 得到 int cd的?br />    * @param key 字段?br />    * @return int cd的?br />    */<br />   public int getInt(String key) {<br />     return this.getRecord().getInteger(key).intValue();<br />   }</p> <p>  /**<br />    * 得到 short cd的?br />    * @param key 字段?br />    * @return short cd的?br />    */<br />   public short getShort(String key) {<br />     return this.getRecord().getShort(key).shortValue();<br />   }</p> <p>  /**<br />    * 得到 double cd的?br />    * @param key 字段?br />    * @return double cd的?br />    */<br />   public double getDouble(String key) {<br />     return this.getRecord().getDouble(key).doubleValue();<br />   }</p> <p>  /**<br />    * 得到 float cd的?br />    * @param key 字段?br />    * @return float cd的?br />    */<br />   public float getFloat(String key) {<br />     return this.getRecord().getFloat(key).floatValue();<br />   }</p> <p>  /**<br />    * 得到 boolean cd的?br />    * @param key 字段?br />    * @return boolean cd的?br />    */<br />   public boolean getBoolean(String key) {<br />     return this.getRecord().getBoolean(key).booleanValue();<br />   }</p> <p>  /**<br />    * 得到 byte cd的?br />    * @param key 字段?br />    * @return byte cd的?br />    */<br />   public byte getByte(String key) {<br />     return this.getRecord().getByte(key).byteValue();<br />   }</p> <p>  /**<br />    * 得到 byte[] cd的?br />    * @param key 字段?br />    * @return byte[] cd的?br />    */<br />   public byte[] getBytes(String key) {<br />     return this.getRecord().getBytes(key);<br />   }</p> <p>  /**<br />    * 得到 Blob cd的?br />    * @param key 字段?br />    * @return Blob cd的?br />    */<br />   public java.sql.Blob getBlob(String key) {<br />     return this.getRecord().getBlob(key);<br />   }</p> <p>  /**<br />    * 得到 Clob cd的?br />    * @param key 字段?br />    * @return Clob cd的?br />    */<br />   public java.sql.Clob getClob(String key) {<br />     return this.getRecord().getClob(key);<br />   }</p> <p>  /**<br />    * 得到 Array cd的?br />    * @param key 字段?br />    * @return Array cd的?br />    */<br />   public java.sql.Array getArray(String key) {<br />     return this.getRecord().getArray(key);<br />   }</p> <p>  /**<br />    * 得到 InputStream cd的?br />    * @param key 字段?br />    * @return InputStream cd的?br />    */<br />   public java.io.InputStream getBinaryStream(String key) {<br />     return this.getRecord().getBinaryStream(key);<br />   }</p> <p>  /**<br />    * 得到 Object cd的?br />    * 注意: 如果字段?char cd, 要注意返回的值尾部是否有多余的空?br />    * @param key 字段?br />    * @return Object cd的?br />    */<br />   public Object getObject(String key) {<br />     return this.getRecord().getObject(key);<br />   }</p> <p>  /**<br />    * q回盔R的页?br />    * @param size 盔R的页?br />    * @return 成功q回所有相ȝ号集合, p|q回 null<br />    */<br />   public int[] getNeighbouringPage(int size) {<br />     try {<br />       int left = (this.CURRENT_PAGE - 1 > size) ? size : this.CURRENT_PAGE - 1;<br />           int right = (this.TOTAL_PAGE - this.CURRENT_PAGE > size) ? size :<br />           this.TOTAL_PAGE - this.CURRENT_PAGE;<br />           int begin = this.CURRENT_PAGE - left;<br />       int[] num = new int[left + 1 + right];<br />       for (int i = 0; i < num.length; i++) {<br />         num[i] = begin + i;<br />       }<br />       return num;<br />     }<br />     catch (Exception e) {<br />       //Log.error(e);<br />       return null;<br />     }<br />   }</p> <p>  /**<br />    * 与另一个记录集合ƈ<br />    * @param rs 记录?br />    */<br />   public void merge(RecordSet rs) {<br />     try {<br />       rs.beforeFirst();<br />       while (rs.next()) {<br />         this.add(rs.getRecord());<br />       }<br />       this.TOTAL_RECORD_COUNT += rs.TOTAL_RECORD_COUNT;<br />       this.beforeFirst();<br />     }<br />     catch (Exception e) {<br />       //Log.error(e);<br />     }<br />   }<br /> }</p> <p><span style="color: red">//////////////////////////////////////////Record.java///////////////////////////////////////////</span></p> <p>import java.util.*;</p> <p>public class Record<br />     extends HashMap {</p> <p>  /**<br />    * 取得字段的?br />    * @param key 字段?br />    * @return 成功q回字段的取? 异常或失败返?null<br />    */<br />   public Object get(String key) {<br />     if (key == null) {<br />       return null;<br />     }<br />     else {<br />       return super.get(key.toUpperCase());<br />     }<br />   }</p> <p>  /**<br />    * 得到 String cd的?br />    * @param key 字段?br />    * @return String cd的?br />    */<br />   public java.lang.String getString(String key) {<br />     Object obj = this.get(key);<br />     return (java.lang.String) obj;<br />   }</p> <p>  /**<br />    * 得到 Timestamp cd的?br />    * @param key 字段?br />    * @return Timestamp cd的?br />    */<br />   public java.sql.Timestamp getTimestamp(String key) {<br />     Object obj = this.get(key);<br />     return (java.sql.Timestamp) obj;<br />   }</p> <p>  /**<br />    * 得到 Date cd的?br />    * @param key 字段?br />    * @return Date cd的?br />    */<br />   public java.sql.Date getDate(String key) {<br />     Object obj = this.get(key);<br />     return (java.sql.Date) obj;<br />   }</p> <p>  /**<br />    * 得到 Time cd的?br />    * @param key 字段?br />    * @return Time cd的?br />    */<br />   public java.sql.Time getTime(String key) {<br />     Object obj = this.get(key);<br />     return (java.sql.Time) obj;<br />   }</p> <p>  /**<br />    * 得到 BigDecimal cd的?br />    * @param key 字段?br />    * @return BigDecimal cd的?br />    */<br />   public java.math.BigDecimal getBigDecimal(String key) {<br />     Object obj = this.get(key);<br />     return (java.math.BigDecimal) obj;<br />   }</p> <p>  /**<br />    * 得到 Long cd的?br />    * @param key 字段?br />    * @return Long cd的?br />    */<br />   public java.lang.Long getLong(String key) {<br />     Object obj = this.get(key);<br />     return (java.lang.Long) obj;<br />   }</p> <p>  /**<br />    * 得到 Integer cd的?br />    * @param key 字段?br />    * @return Integer cd的?br />    */<br />   public java.lang.Integer getInteger(String key) {<br />     Object obj = this.get(key);<br />     return (java.lang.Integer) obj;<br />   }</p> <p>  /**<br />    * 得到 Short cd的?br />    * @param key 字段?br />    * @return Short cd的?br />    */<br />   public java.lang.Short getShort(String key) {<br />     Object obj = this.get(key);<br />     return (java.lang.Short) obj;<br />   }</p> <p>  /**<br />    * 得到 Double cd的?br />    * @param key 字段?br />    * @return Double cd的?br />    */<br />   public java.lang.Double getDouble(String key) {<br />     Object obj = this.get(key);<br />     return (java.lang.Double) obj;<br />   }</p> <p>  /**<br />    * 得到 Float cd的?br />    * @param key 字段?br />    * @return Float cd的?br />    */<br />   public java.lang.Float getFloat(String key) {<br />     Object obj = this.get(key);<br />     return (java.lang.Float) obj;<br />   }</p> <p>  /**<br />    * 得到 Boolean cd的?br />    * @param key 字段?br />    * @return Boolean cd的?br />    */<br />   public java.lang.Boolean getBoolean(String key) {<br />     Object obj = this.get(key);<br />     return (java.lang.Boolean) obj;<br />   }</p> <p>  /**<br />    * 得到 Byte cd的?br />    * @param key 字段?br />    * @return Byte cd的?br />    */<br />   public java.lang.Byte getByte(String key) {<br />     Object obj = this.get(key);<br />     return (java.lang.Byte) obj;<br />   }</p> <p>  /**<br />    * 得到 byte[] cd的?br />    * @param key 字段?br />    * @return byte[] cd的?br />    */<br />   public byte[] getBytes(String key) {<br />     Object obj = this.get(key);<br />     return (byte[]) obj;<br />   }</p> <p>  /**<br />    * 得到 Blob cd的?br />    * @param key 字段?br />    * @return Blob cd的?br />    */<br />   public java.sql.Blob getBlob(String key) {<br />     Object obj = this.get(key);<br />     return (java.sql.Blob) obj;<br />   }</p> <p>  /**<br />    * 得到 Clob cd的?br />    * @param key 字段?br />    * @return Clob cd的?br />    */<br />   public java.sql.Clob getClob(String key) {<br />     Object obj = this.get(key);<br />     return (java.sql.Clob) obj;<br />   }</p> <p>  /**<br />    * 得到 Array cd的?br />    * @param key 字段?br />    * @return Array cd的?br />    */<br />   public java.sql.Array getArray(String key) {<br />     Object obj = this.get(key);<br />     return (java.sql.Array) obj;<br />   }</p> <p>  /**<br />    * 得到 InputStream cd的?br />    * @param key 字段?br />    * @return InputStream cd的?br />    */<br />   public java.io.InputStream getBinaryStream(String key) {<br />     Object obj = this.get(key);<br />     return (java.io.InputStream) obj;<br />   }</p> <p>  /**<br />    * 得到 Object cd的?br />    * @param key 字段?br />    * @return Object cd的?br />    */<br />   public Object getObject(String key) {<br />     return this.get(key);<br />   }</p> <p>}</p> <img src ="http://www.aygfsteel.com/keweibo/aggbug/191478.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/keweibo/" target="_blank">KE</a> 2008-04-08 14:33 <a href="http://www.aygfsteel.com/keweibo/articles/191478.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ٲ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ؼ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">彧</a>| <a href="http://" target="_blank">Ϊ</a>| <a href="http://" target="_blank">ͨ</a>| <a href="http://" target="_blank">䶨</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">˳</a>| <a href="http://" target="_blank">̩</a>| <a href="http://" target="_blank">ӥ̶</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ͳ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">̩</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ij</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">⴨</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Դ</a>| <a href="http://" target="_blank">綫</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">̶</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>