`
lemo
  • 浏览: 91619 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用fileupload进行文件上传

EXT 
阅读更多
// 上传路径
		SimpleDateFormat dateformat = new SimpleDateFormat("yyyy/MM/dd/HH");
		String pathdir = "/newsimages/uploadfile/"
				+ dateformat.format(new Date());//
		
		ServletContext realpathdir = request.getSession().getServletContext();
		String path = realpathdir.getRealPath(pathdir);
		// System.out.println(realpathdir);
		// 如目录不存在,创建一个
		File savedir = new File(path);
		if (!savedir.exists())
		{
			savedir.mkdirs();
		}

		// 创建一个工厂类
		DiskFileItemFactory factory = new DiskFileItemFactory();

		factory.setRepository(savedir);

		factory.setSizeThreshold(1024 * 1024);

		ServletFileUpload fileuplod = new ServletFileUpload(factory);
		
		int id = 0;
		 String fieldValue = "";
		 String filename = "";
		try
		{
			// 解析各个表单域
			List<FileItem> list = fileuplod.parseRequest(request);
			for (FileItem fileItem : list)
			{
				if (fileItem.isFormField())
				{
					// 获得简单域的名字
					String fieldName = fileItem.getFieldName();
					
			
					// 获得简单域的值
					fieldValue = fileItem.getString("UTF-8");
					
					id = Integer.parseInt(fieldValue);
					
					request.setAttribute(fieldName, fieldValue);
				}
				else
				{
					//获得file域的名字   
	                String fieldName = fileItem.getFieldName();   
	                //获得file域的值,带路径,即是路径+文件名   
	                String value = fileItem.getName();   
	                //取的file域的值的名字,不带路径   
	                int pos = value.lastIndexOf("\\");   
	                fieldValue = value.substring(pos+1);   
	                //获得是file文件的内容,而不是路径+文件名   
	                request.setAttribute(fieldName, fieldValue);
	                String ext = fieldValue.substring(fieldValue.length()-3).toLowerCase();
	                filename = UUID.randomUUID().toString()+ "."+ext;
	                //上传
	                fileItem.write(new File(savedir, filename));   
	                
				}
				
				News news = newsService.getNewsById(id);
				
				
				news.setFile("/omservice"+pathdir+"/"+ filename);
				
				
				
				news.setIsFocus(true);
				news.setIsFirst(false);
				newsService.saveNews(news);
				
				//上传文件的路径///
				request.setAttribute("imagepath", news.getFile());
}
			
			
		}
		catch(Exception e)
		{
			request.setAttribute("error", "上传失败!");
			e.printStackTrace();
		}
	
		request.setAttribute("message", "上传成功!");
		return mapping.findForward("success");
分享到:
评论

相关推荐

    使用fileupload组件实现文件上传功能

    使用fileupload组件实现文件上传功能 FileUpload组件是Apache提供的一款文件上传组件,能够帮助我们轻松实现文件上传功能。下面我们将详细介绍使用FileUpload组件实现文件上传功能的步骤和要点: 首先,需要引入两...

    C# .NET FileUpload 多文件上传例子

    在这个"C# .NET FileUpload 多文件上传例子"中,我们将探讨两种主要的方法,帮助你理解和掌握这一关键功能。 首先,我们要知道ASP.NET中的`&lt;asp:FileUpload&gt;`控件是实现文件上传的核心组件。它可以允许用户从本地...

    .net使用FileUpLoad控件上传文件

    在 ASP.NET Web 应用程序中,经常需要实现文件上传功能,这可以通过使用 `FileUpload` 控件来完成。本文将详细介绍如何使用 `.NET` 中的 `FileUpload` 控件进行单个文件的上传,并存储文件的相关信息,如文件名、...

    文件上传下载源代码,FileUpload上传文件

    本篇将详细讲解这一主题,包括文件上传的基本原理、使用FileUpload进行文件上传的步骤以及相关注意事项。 一、文件上传的基本原理 文件上传是HTTP协议中的一个功能,它允许用户通过Web浏览器向服务器传输文件。在...

    commons-fileupload实现文件上传

    本篇将详细讲解如何使用Commons FileUpload来实现文件上传的功能。 首先,理解HTTP协议中的多部分数据是至关重要的。在HTML表单提交文件时,通常会使用`enctype="multipart/form-data"`属性,此时,数据会被分割成...

    使用commons-fileupload上传文件

    通过使用`commons-fileupload`,开发者可以方便地在Java Web应用中实现文件上传功能,而无需关注底层的HTTP协议细节。这个组件提供了丰富的API,支持各种自定义选项,例如内存阈值、临时文件存储位置等,使得文件...

    FileUpload多文件上传(2.0)

    "FileUpload多文件上传(2.0)"这个主题聚焦于2.0版本的ASP.NET中,如何使用C#来实现用户友好的多文件上传功能。下面将详细阐述这一技术的关键点。 首先,让我们了解`FileUpload`控件。在ASP.NET中,`FileUpload`控件...

    使用FileUpload组件实现上传功能

    使用FileUpload组件实现上传功能,供大家一起共同分享学习。

    使用commons-fileupload实现的文件上传和下载

    通过以上步骤,你可以成功地使用Apache Commons FileUpload实现文件上传和下载功能,并避免中文乱码问题。在实际开发中,还可以结合Spring MVC或Struts等框架,进一步简化代码和提高代码的可维护性。

    FileUpload控件自动上传

    综上所述,.NET FileUpload控件的自动上传功能结合预览和安全控制,能够为用户提供便捷且安全的文件上传体验。在Visual Studio 2012中实现这些功能,需要对ASP.NET、JavaScript和服务器端文件操作有深入的理解。在...

    commons-fileupload实现文件上传下载

    ### Commons-FileUpload 实现文件上传下载 #### 知识点概述 Commons-FileUpload 是 Apache 提供的一个用于处理 HTTP 文件上传的组件。它基于 Servlet 规范,并且能够解析来自 `multipart/form-data` 编码类型的 ...

    fileUpload文件上传组件例子

    本示例中的"fileUpload文件上传组件例子"提供了一个自定义实现的文件上传组件,旨在帮助开发者理解并掌握这一关键功能的实现方式。 首先,我们需要了解文件上传的基本原理。在HTML中,`&lt;input type="file"&gt;`标签...

    基于apache commons.fileupload的文件上传组件,改进了上传速度

    本实现抽取了apache commons.fileupload的最基本代码,组合成一个简单的文件上传组件,对parseRequest方法进行了改进,对于文件,直接存储到指定的上传目录,加快了上传速度。使用本程序时,注意上传端的参数设置,...

    commons-fileupload文件上传实例

    通过以上步骤,你可以使用Apache Commons FileUpload实现简单的文件上传功能。这个库提供了许多高级特性,如内存和磁盘混合存储、自定义文件保存策略等,可以根据实际项目需求进行深入学习和应用。

    struts1.2和commons-fileupload实现文件上传

    总结来说,Struts1.2与Commons-Fileupload的结合使用,提供了一个简单而有效的文件上传解决方案。然而,这只是一个基本的实现,实际项目中可能还需要处理更多细节,比如错误处理、异常捕获、文件重命名策略、存储...

    commons-fileupload 文件上传 图片上传 demo

    在实际应用中,使用`commons-fileupload`进行文件上传的基本步骤如下: 1. 创建一个`Servlet`或者`Filter`来处理HTTP请求。 2. 在`Servlet`或`Filter`中,创建`DiskFileItemFactory`实例来配置内存和磁盘存储策略。...

    fileupload文件上传下载代码示例

    综上所述,"fileupload文件上传下载代码示例"是一个关于使用Java进行文件上传和下载的实践项目。通过学习和理解这些代码,开发者可以掌握在Web应用中处理文件上传和下载的核心技术,从而在实际工作中实现类似功能。

    asp.net fileupload文件上传

    ASP.NET中的FileUpload控件是用于处理用户上传文件的核心组件,尤其在Web应用程序中,它提供了方便的文件上传功能。以下是对标题和描述中涉及的知识点的详细解释: 1. **FileUpload控件的使用**:在ASP.NET环境中,...

    JSF页面,<p:fileUpload组件文件上传

    本篇文章将深入探讨如何使用PrimeFaces的`&lt;p:fileUpload&gt;`组件在JSF应用中实现实时、便捷的文件上传。 首先,让我们了解`&lt;p:fileUpload&gt;`的基本用法。在JSF页面中,你可以通过以下方式引入这个组件: ```html ...

    fileupload插件 上传文件自带进度条

    总的来说,fileupload插件是一个强大的文件上传解决方案,它通过提供进度条功能和自定义限制,提高了用户在上传文件过程中的体验。同时,它也展示了现代Web技术如何与后端服务紧密结合,实现高效、安全的文件上传...

Global site tag (gtag.js) - Google Analytics