注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Lable

........................................

 
 
 

日志

 
 

PageBean分页 Servlet文件上传  

2011-11-07 16:39:36|  分类: Java笔记 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

一、分页< xmlnamespace prefix ="o" ns ="urn:schemas-microsoft-com:office:office" />

      为什么需要分页:

      方便浏览

     限制了数据读取显示的数量,因而减少了与数据库交互时的资源占用

      分页显示的实现

      确定每页显示的数据数量

      确定分页显示所需要的总页数

      通过查询获得数据库中总的记录数

      计算需要划分多少页

totalPages = (count%pageSize==0)?(count/pageSize):(count/pageSize+1)

      编写sql查询语句,实现数据查询

select * from (select rownum as r, t.* from(select news.* from news order by ncreatedate desc) t where rownum<=”pageSize*pageIndex”) where r>”pageSize*(pageIndex-1)”

      JSP页面中进行分页显示设置

      注意获得当前页、设置上一页、下一页

      封转分页用到的属性(PageBean

//当前页列表数据

    private List result = new ArrayList(0);

    //记录总数

    private int rowsCount;

    //页大小

    private int pageSize = 15;

    //总页数

    private int pageCount;

    //当前页码

    private int pageNo;

    //上一页码

    private int prePageNo;

    //下一页码

    private int nextPageNo;

    //第一页码

    private int firstPageNo = 1;

    //最后一页码

    private int lastPageNo;

   

    public List getResult() {

       return result;

    }

    public void setResult(List result) {

       this.result = result;

    }

    public int getRowsCount() {

       return rowsCount;

    }

    public void setRowsCount(int rowsCount) {

       this.rowsCount = rowsCount;

    }

    public int getPageSize() {

       return pageSize;

    }

    public void setPageSize(int pageSize) {

       this.pageSize = pageSize;

    }

 

    public int getPageCount() {

       //计算总页数

       pageCount = this.rowsCount / this.pageSize;

       if(this.rowsCount % this.pageSize != 0)

       {

           this.pageCount++;

       }

       return pageCount;

    }

 

    public int getPageNo() {

       return pageNo;

    }

    public void setPageNo(int pageNo) {

       this.pageNo = pageNo;

    }

    //获得上一页

    public int getPrePageNo() {

       this.prePageNo = this.pageNo - 1;

       if(this.prePageNo < this.firstPageNo)

       {

           this.prePageNo = this.firstPageNo;

       }

       return prePageNo;

    }

 

    //获得下一页

    public int getNextPageNo() {

       this.nextPageNo = this.pageNo + 1;

       if(this.nextPageNo > this.getLastPageNo())

       {

           this.nextPageNo = this.getLastPageNo();

       }

       return nextPageNo;

    }

   

    //获得第一页

    public int getFirstPageNo() {

       return firstPageNo;

    }

   

    //获得最后一页

    public int getLastPageNo() {

       this.lastPageNo = this.getPageCount();

       return lastPageNo;

}

二、文件上传

      SmartUpload的优点

      使用简单方便

      能够全程控制上传的内容

      能够对上传文件的大小、类型等进行控制

      表单属性的设置

      < from enctype=”multipart/form-data” method=”post”>

      使用file控件选择文件

      <input type=”file” name=”nfile”>

      SmartUpload组件的常用方法

      File

saveAs(String path,int optionSaveAs)

将文件保存,第一个参数表示保存的文件名,第二个参数表示保存的选项

isMissing()

用户是否选择了文件

getFiledName

获取表单中当前上传文件所对应的表单项名

getFileName()

获取上传文件的文件名称

getFilePathName()

获取文件的路径名称

getFileExt()

获取文件的扩展名

 

      Files

getCount()

取得文件上传的数目

Public File getFile(int index)

取得指定位置的File文件对象

Public long getSize()

取得上传文件的总长度

Public Collection getCollection()

将所有上传文件对象以Collection形式返回

 

      SmartUpload

initialize(PageContext pageContext)

执行上传和下载的初始化工作,必须实现

upload()

实现文件上传,在initialize之后执行

public int save(String pathName)

保存文件到指定的目录,返回保存文件个数

setAllowFilesList(String ExtList)

指定允许上传的文件扩展名列表,“,”分隔

setDeniedFilesList(String fileList)

指定禁止上传的文件扩展名列表,“,”分隔

setMaxFileSize(long filesize)

设定每个文件允许上传的最大长度

setTotalMaxFileSize(long totalfilesize)

设定允许上传文件的总长度

 

      控制文件上传的类型

      //定义允许上传文件类型

      smartUpload.setAllowedFilesLIst(“gif,jpg,doc”);

      //不允许上传文件类型

      smartUpload.setDeniedFilesList(“jsp,exx,php,bat”);

      控制文件上传的大小

      //单个文件最大限制(< xmlnamespace prefix ="st1" ns ="urn:schemas-microsoft-com:office:smarttags" />2M)

      smartUpload.setMaxFileSize(2*1024*1024);

      //总共上传文件限制

      smartUpload.setTotalMaxFileSize(5000000);

      获取表单数据

      注意:由于提交表单时我们修改了编码方式,在程序中使用JSP内置对象requestgetParameter()方法将不能获取表单中包含的其他信息,此时我们要使用SmartUpload对象的getRequest()获取com.jspsmart.upload.Request对象

      Request request2 = su.getRequest();

      String name = request2.getParameter(String name)

      String[] name = request2.getParameterValues(String name)

  评论这张
 
阅读(22)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017