您的位置:首页 > 运维架构 > Linux

Linux内核如何装载和启动一个可执行程序

2015-04-16 23:01 351 查看
一个通用的分页方法,不仅在数据库操作上分页了还在上层也做了分页.理解了这个就很容易理解其他框架的分页了.

java 代码

import  java.math. * ;   

  

public   class  Pager   {   

     private   int  totalRows;  // 总行数    

     private   int  pageSize=30 ;  // 每页显示的行数    

     private   int  currentPage;  // 当前页号    

     private   int  totalPages;  // 总页数    

     private   int  startRow;  // 当前页在数据库中的起始行    

       

    public  Pager()   {   

           

   }    

      

    public  Pager( int  _totalRows)   {   

       totalRows=_totalRows;   

       totalPages=totalRows / pageSize;   

        int  mod=totalRows % pageSize;   

        if (mod > 0 )  {   

           totalPages ++ ;   

       }    

       currentPage=1 ;   

       startRow=0 ;   

   }    

      

    public   int  getStartRow()   {   

        return  startRow;   

   }    

     public   int  getTotalPages()   {   

        return  totalPages;   

   }    

     public   int  getCurrentPage()   {   

        return  currentPage;   

   }    

     public   int  getPageSize()   {   

        return  pageSize;   

   }    

     public   void  setTotalRows( int  totalRows)   {   

        this.totalRows  =  totalRows;   

   }    

     public   void  setStartRow( int  startRow)   {   

        this.startRow  =  startRow;   

   }    

     public   void  setTotalPages( int  totalPages)   {   

        this.totalPages  =  totalPages;   

   }    

     public   void  setCurrentPage( int  currentPage)   {   

        this.currentPage  =  currentPage;   

   }    

     public   void  setPageSize( int  pageSize)   {   

        this.pageSize  =  pageSize;   

   }    

     public   int  getTotalRows()   {   

        return  totalRows;   

   }    

     public   void  first()   {   

       currentPage  =   1 ;   

       startRow  =   0 ;   

   }    

     public   void  previous()   {   

        if  (currentPage  ==   1 )   {   

            return ;   

       }    

       currentPage -- ;   

       startRow =(currentPage-1)*pageSize;   

   }    

     public   void  next()   {   

        if  (currentPage<totalPages)   {   

           currentPage ++ ;   

       }    

       startRow=(currentPage-1)*pageSize;   

   }    

     public void last()   {   

       currentPage=totalPages;   

       startRow=(currentPage-1 )*pageSize;   

   }    

     public void refresh(int  _currentPage)   {   

       currentPage=_currentPage;   

        if  (currentPage>totalPages)   {   

           last();   

       }    

   }    

}    

  

 操作pager的PagerService

java 代码

package com.game.common;   

  

public   class  PagerService   {   

       

       

       

    public  Pager getPager(String currentPage,String pagerMethod, int  totalRows)   {   

        //     定义pager对象,用于传到页面    

        Pager pager= new  Pager(totalRows);   

        //     如果当前页号为空,表示为首次查询该页   

        //     如果不为空,则刷新pager对象,输入当前页号等信息    

          if  (currentPage!=null )   {   

           pager.refresh(Integer.parseInt(currentPage));   

       }    

        //     获取当前执行的方法,首页,前一页,后一页,尾页。    

          if  (pagerMethod!=null )   {   

            if  (pagerMethod.equals("first"))   {   

               pager.first();   

           }   else   if  (pagerMethod.equals("previous"))   {   

               pager.previous();   

           }   else   if  (pagerMethod.equals("next"))   {   

               pager.next();   

           }   else   if  (pagerMethod.equals("last"))   {   

               pager.last();   

           }    

       }    

        return  pager;   

   }    

}    

  

java 代码

public class ProductsDaoImp extends HibernateDaoSupport implements ProductsDao {   

  

    public int getRows() {   

           

        String sql = " FROM Products ORDER BY gameNameCn " ;   

        List list = this .getHibernateTemplate().find(sql);   

         return  list.size();   

  

    }   

  

    public void addProduct(Products pd) {   

        this.getHibernateTemplate().save(pd);   

  

    }   

  

    public void deleteProduct(Products pd) {   

    this.getHibernateTemplate().delete(pd);   

  

    }   

  

    public String getMaxId() {   

        String sql="select max(gameId)+1 from Products";   

         String  noStr=null;   

         List  list=(List)this.getHibernateTemplate().find(sql);   

         Iterator  it=list.iterator();   

         if(it.hasNext()){   

            Object noInt=it.next();   

            if(noInt==null){   

                noStr="1";   

            }else{   

                noStr=noInt.toString();   

            }   

  

         }   

         if(noStr.length()==1){   

             noStr="000"+noStr;   

         }else if(noStr.length()==2){   

             noStr="00"+noStr;   

         }else if(noStr.length()==2){   

             noStr="0"+noStr;   

         } else {   

             noStr=noStr;   

         }   

       

        return noStr;   

    }   

  

    public List getProducts() {   

        String hql="from products order by gameNameCn";   

        this.getHibernateTemplate().find(hql);   

        return null;   

    }   

  

    public List getProducts(final int pageSize, final int startRow) {   

            

        return this.getHibernateTemplate().executeFind(new HibernateCallback(){   

  

            public Object doInHibernate(Session session ) throws HibernateException, SQLException {   

                Query query=session.createQuery("from products order by gameNameCn");   

                 query.setFirstResult(startRow);   

                   

                  query.setMaxResults(pageSize);   

                return query.list();   

            }   

                

         });    

           

    }   

  

    public Products getProducts(int gameId) {   

        return (Products)this.getHibernateTemplate().get(Products.class, gameId);   

            

    }   

  

    public int getRows(String fieldName, String value) {   

        

        String sql = " FROM Products where  " + fieldName + "  like '% " + value + " %' " + " ORDER BY gameNameCn " ;   

        List list = this .getHibernateTemplate().find(sql);   

         return  list.size();   

    }   

  

    public List queryProducts(String fieldName, String value) {   

        String sql = "FROM Products where" + fieldName + "like'%" + value + "%' " + "ORDER BY gameNameCn" ;   

  

        return this.getHibernateTemplate().find(sql);   

    }   

  

    public List queryProducts(String fieldName,  String value, final int pageSize,   

            final   int startRow) {   

        final  String sql = " FROM Products where  " + fieldName+ "  like '% " + value + " %' " + " ORDER BY gameNameCn " ;   

        return this.getHibernateTemplate().executeFind(new HibernateCallback(){   

           

  

            public Object doInHibernate(Session session ) throws HibernateException, SQLException {   

                Query query=session.createQuery(sql);   

                 query.setFirstResult(startRow);   

                   

                  query.setMaxResults(pageSize);   

                return query.list();   

            }   

                

         });    

           

       

    }   

  

    public void updateProductd(Products pd) {   

          this.getHibernateTemplate().update(pd);   

    }   

  

}   
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: