`
Java_大猫
  • 浏览: 173958 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

fileUpload组件上传-笔记

阅读更多
最近小弟在学习struts2 这是其中的一节学习的个人笔记。
PS:仅供与大猫一样的初学者交流参考。
我想很多了解struts的朋友对于fileupload 来说已经很熟悉。一个很好的上传组件,而struts2的上传底层实现也是基于了fileupload而实现。

代码如下:

//建立工厂
DiskFileItemFactory factory = new DiskFileItemFactory();
//取得临时上传目录
String path = request.getRealPath("/upload");
factory.setRepository(new File(path));
factory.setSizeThreshold(1024 * 1024);//大于等于1M放入 磁盘里

//通过servletFileUpload 进行上传处理

ServletFileUpload upload = new ServletFileUpload(factory);
	List<FileItem> list = upload.parseRequest(request);
			for (FileItem item : list){
				if(item.isFormField()){
					String name=item.getFieldName();
					String value = item.getString("GBK");
					request.setAttribute(name, value);
				}else{
					String name = item.getFieldName();

					String value = item.getName();
					
					int start = value.lastIndexOf("\\");
					String fileName =value.substring(start+1);

					request.setAttribute(name, fileName);
					//item.write(new File(name,path));
	                         OutputStream os = new FileOutputStream(new File(path,fileName));
					InputStream is = item.getInputStream();
					
					byte[] buffer = new byte[400];
					int length = 0;
					while((length=is.read(buffer))>0){
						os.write(buffer, 0, length);
					}
					os.close();
					is.close();
分享到:
评论

相关推荐

    fileupload文件上传与配置

    首先,我们需要理解`Fileupload`的核心组件——`Commons FileUpload`。`Commons FileUpload`是Apache Jakarta项目的一部分,它提供了一个简单且灵活的方式来处理HTTP请求中的多部分数据,即通常用于文件上传的格式。...

    编码实现图片上传.rar

    总的来说,"编码实现图片上传"是一个涵盖前端交互、后端处理、文件操作和数据库交互的综合过程,而Apache Commons FileUpload组件则为这一过程提供了强大的支持。理解并熟练掌握这一流程,对于任何Web开发者来说都是...

    09_尚硅谷_文件的上传和下载_王振国 - 课堂笔记1

    文件上传和下载技术详解 文件上传和下载是许多系统和软件...文件上传和下载技术是许多系统和软件中常见的功能,commons-fileupload.jar是Apache Commons提供的一个文件上传组件,提供了许多有用的API来处理文件上传。

    崔希凡JavaWeb笔记day22-day24

    **fileupload组件**是由Apache Commons项目提供的用于处理文件上传的组件。它主要负责解析`request.getInputStream()`中的数据。 **所需JAR包**: - `commons-fileupload.jar`: 核心包。 - `commons-io.jar`: 依赖包...

    struts笔记

    Commons FileUpload组件能够很好地处理多部分表单数据,并且易于集成到Struts框架中。 3. **Servlet 3.0 的 Part**:Servlet 3.0规范中引入了一种新的文件上传机制——Part对象。尽管这种方式更为现代且功能强大,但...

    struts2学习笔记三

    在本篇“Struts2学习笔记三”中,我们将探讨Struts2中处理文件上传的核心组件和拦截器,以及如何在实际应用中实现文件上传。 1. 文件上传组件: - jspSmartUpload:这是一个早期用于模型1的上传组件,现在已经被更...

    struts2综合笔记

    - `commons-fileupload-1.2.2.jar`: 文件上传组件。 - `commons-io-2.0.1.jar`: 文件操作支持库。 - `commons-lang-2.5.jar`: Java 语言包增强。 - 可参考 `struts-2.3.15.3-all\struts-2.3.15.3\apps\struts2-...

    sshb笔记复习

    在视图支持方面,Struts2提供了丰富的标签库,例如在文件上传功能中,可以使用`s:file`组件来定义上传表单。要实现文件上传,需要引入commons-fileupload和commons-io库,定义对应的领域对象FileInfo,并配置struts....

    struts2学习笔记

    - **commons-fileupload-1.2.1.jar**:用于支持文件上传功能,自2.1.6版本起,必须引入此包才能正常使用文件上传功能。 **特别说明**:在Struts2-2.1.6版本中,必须导入commons-fileupload-1.2.1.jar,因为其中包含...

    JavaWeb视频笔记word版本

    笔记可能会讲解如何使用Servlet和Apache Commons FileUpload库实现这些功能。 10. **错误处理和日志记录**:在开发过程中,正确处理异常和记录日志是必不可少的。笔记可能包含如何配置错误页面,以及使用log4j等...

    sshb笔记(注释)复习.doc

    本篇笔记主要对比了Struts1和Struts2的区别,并深入讲解了Struts2中的文件上传和下载功能。 首先,Struts2在Action类的设计上比Struts1更加灵活。Struts1要求Action类继承自Action类,而Struts2的Action可以是任意...

    javaweb笔记

    笔记可能涉及使用Commons-FileUpload库处理文件上传,以及如何创建下载链接。 九、WebSocket WebSocket是提供双向通信的协议,使得服务器可以主动向客户端推送数据。笔记可能简单介绍WebSocket的使用和Java API。 ...

    FileUpload.zip

    WebUploader是一款强大的JavaScript文件上传组件,它提供了丰富的API和灵活的配置选项,使得在.NET MVC环境中实现文件上传变得简单易行。本文将深入探讨WebUploader在.NET MVC环境下的应用,以及如何实现图片上传和...

    struts2学习笔记黑马程序员

    ### Struts2学习笔记之文件上传与Ajax开发 #### Struts2文件上传 **文件上传简介** 文件上传是Web应用中常见的功能之一,Struts2框架内置了对文件上传的支持,使得开发者能够轻松地实现这一功能。为了确保文件...

    传智播客struts2全程学习笔记

    ### 传智播客Struts2全程学习...- `commons-fileupload-1.2.1.jar`:用于文件上传的组件。 #### Struts2应用的配置文件 Struts2的配置文件主要负责定义Action、拦截器和其他配置信息。示例配置文件如下: ```xml ...

    基于java web端的云笔记

    这可能需要用到Apache Commons FileUpload处理文件上传,Git或SVN进行版本管理。同时,为了实现多用户协作,可能需要集成WebSocket实现实时通信。 最后,为了提升用户体验,可能需要引入AJAX(Asynchronous ...

    struts学习笔记

    在Struts框架中,实现文件上传主要依赖于Apache Commons FileUpload组件。该组件提供了强大的文件上传功能,可以轻松处理多部分请求,包括普通表单字段和文件字段。 #### 使用Commons FileUpload进行文件上传 在...

Global site tag (gtag.js) - Google Analytics