• oracle 界面分页


    /**
     * 
     */
    package org.pan.util;
    
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.util.ArrayList;
    import java.util.List;
    
    import org.pan.contents.Contents;
    import org.pan.db.DBConnectionManager;
    import org.pan.io.ResUserIO;
    /**
     * @author admin
     *
     */
    public class PagerTools
    {
    	/**
    	 * 
    	 * @param currentPageNumber
    	 * @return
    	 * @throws Exception 
    	 */
    	public static List<ResUserIO> getResultSetByPageNumber(Integer currentPageNumber) throws Exception
    	{
    		DBConnectionManager dbMan = new DBConnectionManager();
    		ResultSet fenyeData =null;
    		Statement stmt = null;
    		Integer totleDataNumber = null;
    		List<ResUserIO> resInfoList = null;
    		try
    		{
    			stmt = dbMan.getStatement();
    			
    			totleDataNumber = getAllDataNumber(stmt);
    			String pageNumbers = ConfigTools.getInstance().getConfigByConfigName("PAGENUMBERS");
    			Integer pageNumber = Integer.valueOf(pageNumbers);
    			
    			if(Contents.NO_DATA_IN_DATEBASE.equals(totleDataNumber))
    			{
    				return null;
    			}
    			
    			boolean isFullPage = totleDataNumber>=currentPageNumber*pageNumber ? true:false;
    			
    			if(isFullPage)
    			{
    					Integer upLimit = (currentPageNumber-1)*pageNumber+1;
    					Integer downLimit = currentPageNumber*pageNumber;
    					String querySql = new StringBuffer().append("select username,phonumber,address from(select rownum r ,t1.username,t1.phonumber,address from tc_re_user t1 where rownum <=  ").append(downLimit).append(")t2 where t2.r>=").append(upLimit).toString();
    					fenyeData = stmt.executeQuery(querySql);
    			}
    			else
    			{
    				Integer upLimit = (currentPageNumber-1)*pageNumber;
    				String querySql = new StringBuffer().append("select username,phonumber,address from(select rownum r ,t1.username,t1.phonumber,address from tc_re_user t1 where rownum <=  ").append(totleDataNumber).append(")t2 where t2.r>").append(upLimit).toString();
    				fenyeData = stmt.executeQuery(querySql);
    			}
    			
    		if(null != fenyeData)
    		{
    			resInfoList = new ArrayList<ResUserIO>();
    			ResUserIO resInfo = null;
    			while(fenyeData.next())
    			{
    				resInfo = new ResUserIO();
    				resInfo.setUserName(fenyeData.getString("username"));
    				resInfo.setPhoNumber(fenyeData.getString("phonumber"));
    				resInfo.setAddress(fenyeData.getString("address"));
    				resInfoList.add(resInfo);
    			}
    		}
    		}
    		catch (SQLException e)
    		{
    			e.printStackTrace();
    		}
    		finally
    		{
    			try
    			{
    				stmt.close();
    			}
    			catch (SQLException e)
    			{
    				e.printStackTrace();
    			}
    		}
    		return resInfoList;
    	}
    	
    	public static Integer getTotlePage(Integer dateNumbers ,Integer eachPageNumber)
    	{
    		return dateNumbers%eachPageNumber==0 ? dateNumbers/eachPageNumber : dateNumbers/eachPageNumber+1;
    	}
    
    	public static Integer getAllDataNumber(Statement stmt) throws SQLException
    	{
    		ResultSet resultSet = stmt.executeQuery("select count(*) from tc_re_user");
    		Integer totleDataNumber = 0;
    		if(null != resultSet)
    		{
    			while(resultSet.next())
    			{
    				totleDataNumber = resultSet.getInt(1);
    			}
    		}
    		return totleDataNumber;
    	}	
    }
    


  • 相关阅读:
    c#对XML读取
    WPF--TypeConverter使用
    WPF---对于没有Command属性的添加以下代码可以达到有Command效果
    自定义事件、属性、方法
    读取Excel文件
    ClickOnce安装部署,手动。
    Logger 日志记录
    Maven
    等待与通知范式
    线程状态及基本方法
  • 原文地址:https://www.cnblogs.com/aukle/p/3230935.html
Copyright © 2020-2023  润新知