使用的是:common-fileUpload 上传组件,把common-fileUpload .jar 引入web工程lib中;
下面的页面及处理上传的代码。
--------------------HTML--------------------
<body>
<form action="doPost.jsp" method="post" enctype="multipart/form-data">
<table style="text-align: center;">
<tr>
<td>
<input type="file" name="img">
</td>
</tr>
<tr>
<td>
<input type="submit" value="提交">
</td>
</tr>
</table>
</form>
</body>
注意:action 中添加 enctype="multipart/form-data">
--------------------action-----------------
我这里用的是doPost.jsp 作为servlet。因为jsp本是就是特殊的servlet。
<body>
<%
//得到上传的路径
String upload=request.getRealPath("/")+"upload";
String tempPath=request.getRealPath("/")+"tempPath";
//上传部分
DiskFileUpload fu = new DiskFileUpload();
// 设置最大文件尺寸,这里是4MB
fu.setSizeMax(4194304);
// 设置缓冲区大小,这里是4kb
fu.setSizeThreshold(4096);
// 设置临时目录:
fu.setRepositoryPath(tempPath);
// 得到所有的文件:
List fileItems = fu.parseRequest(request);
Iterator i = fileItems.iterator();
while(i.hasNext())
{
FileItem fi = (FileItem)i.next();
// 获得文件名,这个文件名包括路径:
String fileName = fi.getName();
//修改名字
int begin=fileName.lastIndexOf(".");
int end=fileName.length();
//得到文件后缀
String lastName=fileName.substring(begin,end);
//得到系统时间 和随机数
Date date=new Date();
SimpleDateFormat dFormat=new SimpleDateFormat("yyyyMMddhhmmss");
String mytime=dFormat.format(date);
Random rd=new Random(999999);
int num=rd.nextInt();
String newName=mytime+num+lastName;
if(fileName!=null) {
File file=new File(newName);
File saveFile=new File(upload,file.getName());
//把文件上传至目录中
fi.write(saveFile);
// 在这里可以记录用户和文件信息
// ...
// 写入文件a.jpg,你也可以从fileName中提取文件名:
//fi.write(new File(upload + "a.jpg"));
}
}
%>
</body>
特别说明:
1.项目添加了 common-fileUpload .jar
2. <form action="doPost.jsp" method="post" enctype="multipart/form-data">
3.处理上传的时候我把文件做了修改。思路是:系统时间和随机数+文件的后缀
(如:201109230837501622475814.jpg)
分享到:
相关推荐
北大青鸟6.0课件S2使用JSP/Servlet/Ajax技术开发新闻发布系统2,,我只能上传小于50M的文件,所以分了2次上传,下载使用JSP/Servlet/Ajax技术开发新闻发布系统1后就是全部的了。如有问题加Q:329139513.注明来意
【摘要】:该文介绍了在B/S模式下,通过JSP/Servlet技术实现文件上传的方法。 文件上传在很多网站应用中是必不可少的,在电子商务中上传商品图片,在音乐网站中上传流行歌曲……一个高效率的文件上传功能尤为重要。...
本篇将详细介绍`JSP/servlet`实现文件上传,并结合`AJAXFileUpload`工具进行进度显示,提供更友好的用户体验。 首先,`JSP`是一种基于Java的服务器端脚本语言,它允许在HTML页面中嵌入Java代码,使得动态生成网页变...
以上就是使用JSP和Servlet实现文件上传下载的基本流程和关键代码。在实际应用中,我们还需要考虑错误处理、安全性(如防止文件覆盖、上传恶意文件等)以及性能优化(如使用缓冲、断点续传等)。在大型项目中,可能还...
2. `UploadServlet.java`:这个Servlet可能是处理文件上传的,接收AJAX请求,处理文件并更新用户头像信息。 3. `Ajax.js`:这是一个JavaScript文件,实现了AJAX请求的逻辑,向服务器发送文件并处理返回的结果。 4. ...
至于`project`这个压缩包文件,很可能是项目源代码的打包,其中可能包含了`jsp`页面、`servlet`类、相关的JavaBean(用于封装数据)、配置文件(如web.xml)、以及可能使用的第三方库。解压后,开发人员可以通过阅读...
完成开发后,新闻发布系统会被打包成WAR文件,然后部署到Web服务器上,如将WAR文件上传至Tomcat的webapps目录下,启动服务器即可对外提供服务。 总结,"使用JSP/Servlet/Ajax技术开发新闻发布系统"涉及到的技术栈...
- **Servlet处理逻辑**:编写Servlet来处理用户的HTTP请求,如登录验证、文件上传、搜索请求等,通过调用Hibernate方法与数据库交互。 - **JSP页面**:JSP页面用于展示数据和接收用户输入,结合EL(Expression ...
北大青鸟6.0课件S2使用JSP/Servlet/Ajax技术开发新闻发布系统1,,我只能上传小于50M的文件,所以分了2次上传,下载使用JSP/Servlet/Ajax技术开发新闻发布系统2后就是全部的了。如有问题加Q:329139513.注明来意
实践中,还可能涉及到安全性优化,如使用MIME类型检查防止恶意文件上传,使用CDN存储图片以减轻服务器压力,以及使用session或cookie进行用户验证等。总的来说,理解和熟练掌握`JSP`和`Servlet`的配合使用,对于开发...
这个“一个简单的JSP+Servlet图片上传例子”是一个基础教程,旨在帮助初学者理解如何通过这两种技术实现用户界面与服务器端的交互,特别是处理文件上传的功能。 首先,JSP是Java的一种视图技术,它允许开发者在HTML...
`JSP(JavaServer Pages)`和`Servlet`是Java EE平台上的两种核心技术,它们常用于构建动态Web项目,包括文件上传功能。本篇文章将深入讲解如何使用JSP和Servlet实现文件上传。 首先,我们需要了解`JSP`的基本概念...
本篇将详细讲解如何使用`JSP`和`Servlet`合作实现文件上传功能,特别是针对图片文件的上传。 一、JSP简介 JSP是一种基于Java的服务器端脚本语言,它允许开发者在HTML或XML文档中嵌入Java代码,用于创建动态网页。...
在处理文件上传需求时,JSP通常作为前端界面,而Servlet则负责后端逻辑处理。本篇文章将深入探讨如何使用JSP与Servlet进行文件上传,并特别关注如何解决中文文件名乱码的问题。 首先,我们需要理解文件上传的基本...
在本文中,我们将深入探讨如何使用Java的JSP(JavaServer Pages)和Servlet技术来实现一个图片上传功能。这是一个常见的Web开发任务,特别是在构建交互性强、动态内容丰富的网站时。以下是一些关键知识点: 1. **...
### jsp+servlet实现文件上传下载 在现代Web开发中,文件上传下载是常见的功能之一。JSP(JavaServer Pages)与Servlet技术结合可以轻松实现这一功能。本篇将详细介绍如何利用jspSmartUpload组件实现文件的上传与...
8. **安全性**: 在处理用户上传的附件时,需要注意安全问题,如防止恶意文件的上传和执行。开发者应检查文件类型和大小,避免潜在的安全威胁。 9. **调试与优化**: 当遇到问题时,可以通过日志记录和调试工具来追踪...
通过以上步骤,你将在Glassfish v2服务器上实现一个基本的JSP+Servlet文件上传功能,只允许上传.gif和.jpg格式的图片,同时阻止.exe和.bat等可能带有恶意代码的文件。这样的功能在实际应用中非常实用,如用户头像...
本项目"jsp+servlet小项目(实现图片上传功能)"旨在教授如何利用这两者创建一个简单的图片上传功能。下面将详细介绍这个项目涉及的关键知识点。 1. JSP基础:JSP是一种动态网页技术,允许开发者在HTML页面中嵌入...
它提供了方便的API,能够处理多文件上传、限制文件大小、设置允许的文件类型等需求,使得在`JSP`中实现文件上传变得简单易行。 1. **环境准备** 在开始之前,确保你已经安装了以下软件: - Java Development Kit ...