JSF2.0 中 实现上传下载

文件上传下载
上传
filter拦截request并封装到httpServletRequestWrapper中
然后到BackBean封装到他的属性中

下载直接使用servlet3超链接实现


关于文件上传中文乱码的问题,JSF2很奇怪,它只需要所有页面和数据保持一致,数据库和backbean就不会出现乱码问题,加上spring的编码过滤器反而会产生乱码,但是我的servlet是单独的,获取数据之前必须编码一下。request..setCharacterEncoding('utf-8');我的页面明明是gbk的编码但是只能用utf-8来解码才不会出现错误。记住这一点一般来说JSF开发是不用关心乱码的,保持页面和数据库一致就行了,如数据库和页面都是utf-8.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
由于JSF2.0标准实现没有提供文件上传组件,而实际应用很多时候需要上传文件,为了方便开发,我做了一个基于JSF2.0的文件上传组件,上传使用的是Apache 的commons-fileupload组件,我已经将commons-fileupload-1.2.1.jar和commons-io-1.3.2.jar打包成一个lfaces.jar文件,使用时无需导入这两个jar文件,我使用的是Facelets技术,使用时很简单,导入命名空间后就可以使用标签(<l:inputFile/>)了,这个标签和<h:inputText/>标签使用方法一样,具体请参考例子。补充说明:是以临时文件存放在服务器上的,上传后需要自行处理,响应之前(JSF处理完毕)将会删除该临时文件,要设置上传的参数,比如文件存放目录,上传大小等,请在源目录(src)下建一个名为uploadfile.properties的文件,内容如下: #设置用于存放用户上传的文件夹,可以是绝对路径,例:C:/upload,也可是相对路径,例:/upload, #文件上传后是以.tmp为后缀的临时文件存储在服务器上,请求处理完成后系统将自动删除该临时文件,需要自行保存文件到需求的目录 uploadFile.path=E:/ #设置上传文件总大小的上限 uploadFile.sizeMax=1024*1024*50 #设置上传文件大小的上限 uploadFile.fileSizeMax=1024*1024*10 #设置缓存大小,如果文件大于缓存大小时,则先把文件放到缓存 uploadFile.sizeThreshold=1024*1024 #设置上传文件类型 uploadFile.extFilter=.jpg|.jpeg|.gif|.bmp|.png|.xls|.doc|.txt
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值