- 浏览: 733940 次
- 性别:
- 来自: 重庆
文章分类
- 全部博客 (194)
- Webservice (6)
- ExtJs (2)
- Work Summary (4)
- CoreJava (51)
- Spring (10)
- EJB (5)
- struts1.x (3)
- C/C++ (5)
- DatabaseManager (19)
- Hibernate (5)
- Crytology (1)
- Web Server (5)
- Software Manager (5)
- WebUi (39)
- Web page (2)
- android (5)
- struts2 (12)
- Java 导出 Excel (1)
- Spring 与struts2 和Hibernate 4.0注解解决方安 (1)
- Dwr (1)
- maven3 (4)
- Windows (3)
- 表格头部信息不动使用Jquery 外部框架 (1)
- 软件行业动态 (1)
- mybatis (1)
- C# (3)
- MySQL (4)
最新评论
-
July01:
最近了解到一款StratoIO打印控件,功能如下:1、Html ...
LODOP插件开发 -
an52036:
u010980147 写道您的代码确实能生成条形码,但是打印出 ...
Java 条形码生成(一维条形码) -
di1984HIT:
学习了,很好~~
Ant 打包war 生成文件内容build.xml -
lhb319lhb:
如果 ajax(jquery)更新了 iframe 的 src ...
jquery 修改iframe src -
calosteward:
感谢楼主,除了一维条码,有没有相关二维码的资源呢?______ ...
Java 条形码生成(一维条形码)
1. 有一些时候可能会用到大文件的上传,但是struts 不支持一些上了几百mb 或几G 的文件
在这里我们介绍一个apache 提供的上传文件包
commons-fileupload-1.2.jar
commons-io-1.4.jar
实现原理就是先把文件上传到临时文件夹,当上传成功后在写到批定的上传文件夹中
package com.test; import java.io.File; import java.io.IOException; import java.util.Iterator; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.fileupload.FileItem; import org.apache.commons.fileupload.disk.DiskFileItemFactory; import org.apache.commons.fileupload.servlet.ServletFileUpload; /** * 上传文件servlet * 2008-10-6 * @author liuqing * @version 1.0 */ public class UploadServlet extends HttpServlet { /** * 上传文件方法 * @param tempDirectory 上传文件 temp 文件夹 * @param encoding 上传文件编码 * @param uploadDirectory 上传文件目录 * @param request * @return void */ public void uploadFile(String tempDirectory, String encoding,String uploadDirectory,HttpServletRequest request) { try { boolean isMultipart = ServletFileUpload.isMultipartContent(request); if (isMultipart) { //创建磁工厂,实现内存数据储存量和临时储存路经 DiskFileItemFactory factory = new DiskFileItemFactory(1024 * 4, new File(tempDirectory)); //设置最多只允许在内存中存储的数据,单位:字节 factory.setSizeThreshold(1024 * 4); ServletFileUpload upload = new ServletFileUpload(factory); upload.setHeaderEncoding(encoding); upload.setFileSizeMax(1024 * 1024 * 1024 * 5); List<FileItem> fileItems = upload.parseRequest(request); Iterator<FileItem> iter = fileItems.iterator(); while (iter.hasNext()) { FileItem item = (FileItem)iter.next(); if (item.isFormField()) { String name = item.getFieldName(); String value = item.getString(encoding); System.out.println("" + name + " " + value); } else { String fileName = item.getName(); if (fileName != null) { File fullFile = new File(item.getName()); if (!this.isTooBig(fullFile.length())) { throw new Exception(); } if (fullFile.exists()) { File fileOnServer = new File(uploadDirectory + fullFile.getName()); item.write(fileOnServer); } } } } } } catch (Exception e) { e.printStackTrace(); } } /** * servlet 上传文件service 方法 */ @Override protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.uploadFile("d:\\uploadFile\\temp", "UTF-8", "d:\\uploadFile\\upload\\", request); response.sendRedirect("success.jsp"); } /** * 设置文件大小 MB */ private static int maxSize = 100; /** * 判断文件大小是否太大 * @param argFileSize * @return */ public boolean isTooBig(long argFileSize) { double fileSize = argFileSize / (1024.0 * 1024.0); System.out.println("safda" + fileSize); return fileSize > maxSize ? false:true; } /** * setter file size * @return int */ public static void setMaxSize(int maxSize) { UploadServlet.maxSize = maxSize; } }
发表评论
-
ubuntu 安装JDK失败
2020-09-01 20:40 0文件/etc/apt/sources.list是一个普通可 ... -
ubuntu完美卸载JDK
2020-09-01 12:31 698要删除 OpenJDK (如果已安装的话)。首先,检查是安装 ... -
freemark 基本语法
2018-03-22 23:19 840reemarker的基本语法及入门基础 一、freem ... -
linux 新增硬盘分区并挂载
2016-06-02 12:45 1668运行fdisk -l 查看计算机对应的硬盘信息 Disk ... -
JasperReports打印图片
2016-05-21 22:20 2915long start = System.currentTim ... -
CAS 客户端与一般Web项目集成
2015-07-04 16:20 16152这一段时间有同事在问CAS -Client的问题这里就基本问 ... -
CAS-项目集成问题整理
2015-07-04 15:24 1378javax.net.ssl.SSLHandshakeExc ... -
CAS 与Tomcat 集成
2015-06-29 15:16 3714第一节:生成证书 第一步:生成keystore注意【cn= ... -
logback 日志配置生成当天志并分大小
2015-03-26 17:00 1611<?xml version="1.0&quo ... -
Mysql锁表问题
2015-03-26 09:57 8901)查询锁表问题 show open tables ... -
excel 导出文件中文问题
2015-03-24 23:39 1724package com.tzdr.common.utils; ... -
HttpURLConnection Post
2015-02-04 17:08 917/** * Http访问 * @param ht ... -
java获取classpath路径
2015-02-01 11:03 7789ClassLoader 提供了两个方法用于从装载的类路径中取 ... -
Con 表达式
2014-12-28 13:00 2876cron表达式详解 Cron表 ... -
Spring3 +JPA
2014-12-25 19:23 12241)META-INF/persistence.xml T ... -
Hessian调用方法
2014-09-26 12:45 6127package com.huashun.api. ... -
Freemark的使用
2014-06-09 15:27 959freemark 解释 package com.pa ... -
J2EE安装问题
2014-03-20 16:39 950安装J2EE的SDK报错:could ... -
Applet 有包配置及开发HeloWorldl
2013-06-13 08:48 11791.开发代码 package com.newt ... -
Jetty嵌入式服务器端开发
2013-06-07 08:09 10581.服务器代码 package com.newto ...
相关推荐
struts1.x多文件上传, 感觉不错.
Struts1.x的上传文件示例。Struts1.x的教程参考我的Blog:http://blog.csdn.net/boyazuo
使用struts1.x实现单文件,多文件上传,以及下载实例
struts1.x上传实例 struts文件上传,struts upload组件文件上传 最基本的实例,将文件上传到应用服务器里 1.upload.jsp内容 <form action="fileup.do" method="post" enctype="multipart/form-data" > 文件:...
在项目中要上传多个文件,经过百度,Google,终于弄出来了。
struts2.x_FileUpload.zip已经打包好了,解压后直接用
Struts+1.x文件的上传和下载.txt
xwork-core-2.x.x.jar: XWork类库,Struts2在其上构建 c. ognl-2.6.x.jar: 对象图导航语言(Object Graph Navigation Language),Struts2框架通过其读写对象的属性 d. freemarker-2.3.x.jar: Struts的UI标签的模板...
解决struts组件上传附件速度很慢的问题
要求配置条件比较苛刻,同时,一些特定版本没有看到有沙盒绕过,说以,目前exp只是基于S2-045改写的,所以exp并不是所有版本都能用,正常情况下Struts 2.3.5-2.3.31,Struts 2.5-2.5.10版本可以使用此exp。...
10.为什么要使用struts2代替struts1.x 7 二、struts.xml配置及例程 7 1.配置文件的优先级 7 2.配置形式 8 3.package配置相关 8 4.分工合作include:指定多个配置文件 10 5.tomcat认证访问 10 6.初识拦截器 11 7....
1. 文件上传的原理: 表单元素的enctype属性指定的是表单数据的编码方式,该属性有3个值: 1) application/x-www-form-urlencoded:这是默认编码方式,它只处理表单域里的value属性值,采用这种编码方式的表单会...
优化部分EXP在部分情况下被WAF拦截的问题,提高检测成功率,优化自定义上传路径exp,文件所在目录不存在时自动创建目录,防止文件因为目录不存在,导致上传失败。 2018-08-24: 增加S2-057 Struts 2.3 to 2.3.34,...
该漏洞与Apache Struts2 (S2-045)远程代码执行漏洞原理基本相同,均是由于上传功能的异常处理函数没有正确处理用户输入的错误信息,导致远程攻击者可通过发送恶意的数据包,利用该漏洞在受影响服务器上执行任意...
有对漏洞的命令执行功能、文件上传功能。还有批量验证功能。增加S2-046,官方发布S2-046和S2-045漏洞引发原因一样,只是利用漏洞的位置发生了变化,S2-046方式可能绕过部分WAF防护,存在S2-045就存在S2-046。增加S2-...
Struts2 文件上传下载代码 tomcat6.x运行 内有文件上传原理代码
要求配置条件比较苛刻,同时,一些特定版本没有看到有沙盒绕过,说以,目前exp只是基于S2-045改写的,所以exp并不是所有版本都能用,正常情况下Struts 2.3.5-2.3.31,Struts 2.5-2.5.10版本可以使用此exp。...
struts2权威指南 电子书 配套源码 文件大小153mb 分为8个压缩包,每分卷1分,每分卷20兆(最多只让上传20兆,没有办法) struts2权威指南电子书连接:http://sdan250.download.csdn.net/user/sdan250/all/3
第15章 在线文件上传和下载(Struts 2.X+FileUpload) 第16章 网上投票系统(Struts2.X+JFreeChat) 第17章 商业银行网上账户管理系统(Struts2.X) 第18章 Hibernate分页系统(Hibernate3.0) 第19章 生成保表...