spring或springMVC框架图片(文件)上传
页面部分,用一个简单的form表单提交文件,将图片或文件提交到服务端。一个输入框,用于输入图片的最终名称,一个file文件选择,用于选择图片。
页面代码如下:
<form id="form1" >
<table style="width:100%;border:0;">
<tr>
<th style="width:35;text-align: center;" class="must">图片名称:</th>
<td><input id="imgName" style="width:150px;" name="imagePath" verify="true" mustFill="true" maxlength="100" /></td>
</tr>
<tr id="fileSelect">
<th></th>
<td>
<input type="file" name="file" id="doc" style="width:150px;" onchange="javascript:setImagePreview(this);">
</td>
</table>
</form>
js部分,发送一个ajax请求,先检查名称是否重复。没有重复才设置form的action,然后提交表单。代码如下:
//发送检查名称是否重复的后台函数的请求,可以忽略
$.ajax({url:"<%=contextPath%>/imageUploadController/imageExistCheck",type:'POST',dataType:'json',data:data
,success:function(msg){
if(msg.result==false&&$("#saveOrUpdata").val()!="1"){
alert("名称重复,请修改名称");
return 0;
}else{//没重复或者要修改
//下面这个if用于验证表单必填项是否都填了,忽略。
if(Common.verify($("#createForm"))){
//设置form的action
$('#form1').attr('action', '<%=contextPath%>/imageUploadController/imageUpload');
$("#form1").submit();
}
}
},error:function(xhr){alert('错误\n'+xhr.result);}});
return false;
});
最后是后台代码,解释都放在注释里,更便于观看。
@RequestMapping(value="/imageUpload",method=RequestMethod.POST)
public String upLoadImage(FireEquipmentInfo fireEquipmentInfo,HttpServletRequest req){
//转化request
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) req;
MultipartFile multipartFile = multipartRequest.getFile("file");
//获取原文件名
String fileName = multipartFile.getOriginalFilename();
//获取原名后缀
String fileEnd = fileName.substring(fileName.lastIndexOf(".")+1).toLowerCase();
String realName =null;
//获取项目根目录
String imagePath=req.getSession().getServletContext().getRealPath("/");
String imageName=null;
imageName=RequestUtil.getStringParameter(req, "imagePath");
//拼接路径和最终名
imagePath+="img/login/";
realName=imageName+ "." + fileEnd;
try {
//实例化一个file
File file = new File(imagePath);
//创建路径
if(!file.exists())
file.mkdirs();
//创建文件
file=new File(imagePath+"/"+realName);
file = new File(imagePath,realName);
//文件存储
multipartFile.transferTo(file);
} catch (Exception e) {
req.setAttribute("msg", e.getMessage());
}
分享到:
相关推荐
在SSM框架中,可以利用SpringMVC提供的`MultipartFile`接口处理文件上传,通过配置`CommonsMultipartResolver`多部分解析器启用文件上传功能。文件下载则可以通过返回带有Content-Disposition头的HTTP响应来实现。 ...
2. **SpringMVC框架**: - `spring-web.jar`:提供了HTTP上传下载、WebSocket、Servlet监听器等相关功能。 - `spring-webmvc.jar`:SpringMVC的主要实现,包含DispatcherServlet、ModelAndView、HandlerMapping等...
2. **SpringMVC框架**:SpringMVC是Spring框架的一个模块,专门用于处理Web应用的请求-响应模型。它将模型、视图和控制器分离,实现了前后端的解耦,使开发更加清晰。SpringMVC还支持数据绑定、异常处理和国际化等...
《基于Spring+SpringMVC+MyBatis框架的网上商城管理系统》 在现代软件开发领域,Web应用的架构设计显得尤为重要。本项目采用了一个经典的Java技术栈——Spring、SpringMVC和MyBatis,构建了一个功能完善的网上商城...
同时,还需要配置Spring和Mybatis的配置文件,以及SpringMVC的DispatcherServlet配置,确保各个组件能够协同工作。 总之,这个项目展示了如何综合运用多种技术构建一个完整的Web应用,对于初学者来说,这是一个很好...
在"Spring+SpringMVC+Hibernate+Maven框架搭建及配置文件源码"这个项目中,开发者可能已经包含了这些框架的配置文件,例如Spring的applicationContext.xml、SpringMVC的servlet-context.xml、Hibernate的hibernate....
总结来说,这个项目实例了SSM框架下图片上传和回显的完整流程,涉及前后端交互、文件操作、数据库操作和安全防护等多个方面,对于理解SSM框架的应用和Web开发中的文件上传有很好的实践意义。通过学习和实践这个案例...
在开发Web应用时,图片的上传和回显是...首先,我们需要在SpringMVC的配置文件中设置MultipartResolver来支持文件上传。MultipartFile是Spring MVC提供的用于处理文件上传的接口。以下是一个简单的配置示例: ```xml ...
在这个项目"springmvc框架的文件上传 下载"中,你可能会遇到如404错误等常见问题,下面将详细介绍SpringMVC中文件上传和下载的实现及其可能遇到的问题。 **文件上传** 1. **配置**: 首先,你需要在`dispatcher-...
在本项目中,我们主要探讨的是如何利用Java的三大经典框架——Spring、SpringMVC和Hibernate,来构建一个完整的Web应用程序。这个项目特别适合初学者,可以帮助他们深入了解这些框架的用法,以及如何将它们集成到...
【标题】"spring+springMVC+myBatis+maven项目整合"是一个常见的Java Web开发技术栈,这个项目集成了Spring框架(用于依赖注入和管理)、SpringMVC(用于处理HTTP请求和视图渲染)、MyBatis(作为持久层框架)以及...
在SpringMVC框架中,文件的上传和下载是常见的功能需求,主要用于处理用户的数据交互,例如用户上传图片、文档等,或者系统提供文件下载服务。本文将深入探讨如何使用SpringMVC来实现这一功能。 首先,我们需要理解...
在SpringMVC中实现文件上传是一项常见的任务,它允许用户通过表单将本地文件发送到服务器进行存储或处理。这个"SpringMVC文件上传Demo代码"是一个实例,演示了如何配置和使用SpringMVC来实现这一功能。 首先,我们...
在这个“SpringMVC文件上传,多文件上传实例”中,我们将深入探讨如何在SpringMVC环境中实现文件上传功能,包括单个文件上传以及多个文件的批量上传。 1. **文件上传原理**: 文件上传是通过HTTP协议的POST请求来...
- **文件上传与下载**:SpringMVC支持文件上传和下载功能,方便处理与文件相关的操作。 - **国际化与本地化**:通过`Accept-Language`头,SpringMVC能提供多语言支持。 5. **financeManager**:在提供的文件名称...
综上所述,这个"spring+springMVC+mybatis内容管理系统"结合了后端强大的SSM框架和前端美观的Layui,以及功能丰富的UEditor编辑器,实现了新闻展示和内容管理的高效、便捷。通过这些技术的整合,开发者可以快速构建...
在IT行业中,Spring、SpringMVC和Hibernate是Java Web开发中的三大核心框架,它们共同构建了一个强大且灵活的后端架构。本项目是基于这些框架实现的一个功能,即通过前端界面上传Excel文件并进行数据导入。以下是...
在构建基于Java的Web应用程序时,SpringMVC框架是一个广泛使用的轻量级组件,它为开发者提供了强大的模型-视图-控制器(MVC)架构支持。SpringMVC框架的搭建过程中,jar包的正确配置是至关重要的。这些jar包包含了...
1. **SpringMVC框架搭建** - **环境配置**:首先确保已安装Java运行环境和Apache Maven或Gradle,它们用于管理项目依赖。创建一个新的Maven或Gradle项目,并在`pom.xml`或`build.gradle`文件中添加SpringMVC相关的...
SpringMVC作为Spring框架的一部分,提供了强大的支持来处理文件上传任务。本文将详细介绍如何在SpringMVC项目中实现单个文件的上传功能。 #### 二、准备工作 在开始实现文件上传功能之前,我们需要做一些准备工作,...