java Springmvc ajax上传
2016-04-20 15:41
501 查看
ajax上传方式相对于普通的form上传方式要便捷,在更多的时候都会使用ajax (简单的小示例)
1.要先去下载一个 jquery.ajaxfileupload.js(基于jquery.js上的js) 还有jquery.js
2.首先要先配置一下servlet.xml
3.在jsp页面上的form表单中
<script type="text/javascript">
$(function(){
$('#myFile').ajaxfileupload({
'action': 'shxt_upload03',
'onComplete': function(response) {
},
'onCancel': function() {
}
});
});
</script>
4.在controller里面
1.要先去下载一个 jquery.ajaxfileupload.js(基于jquery.js上的js) 还有jquery.js
2.首先要先配置一下servlet.xml
<!-- 文件上传 --> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property name="maxUploadSize" value="10000000" /> </bean>
3.在jsp页面上的form表单中
<form action="shxt_upload03" method="post" > 文件上传: <input type = "file" name="myFile" id="myFile" /> <br/> <input type = "text" name= "shxt" id="shxt" /> <input type = "submit" value="上传文件" /> </form>
<script type="text/javascript">
$(function(){
$('#myFile').ajaxfileupload({
'action': 'shxt_upload03',
'onComplete': function(response) {
},
'onCancel': function() {
}
});
});
</script>
4.在controller里面
public ModelAndView test01(MultipartFile myFile,HttpServletRequest request,HttpServletResponse response){ //1.判断文件是否存在 if(!myFile.isEmpty()){ //2.获取服务器的绝对路径 String path = request.getSession().getServletContext().getRealPath("/upload"); //3.判断文件夹是否存在 File floder = new File(path); if(!floder.isDirectory()){//判断是否为文件夹,前提是文件存在 floder.mkdirs();//创建文件 } try { //4.获取上传文件的后缀名 String extension = FilenameUtils.getExtension(myFile.getOriginalFilename());//5.创建上传文件的新名称 //另外一种起名字的方式 //String newName= UUID.randomUUID().toString()+"."+extension; String newName = (new Date()).getTime()+"_"+(new Random().nextInt(10000))+"."+extension; File newFile = new File(path+"/"+newName); myFile.transferTo(newFile); //返回值 response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); out.write(newName); out.flush(); out.close(); } catch (Exception e) { // TODO: handle exception } } return null; }
相关文章推荐
- SpringAOP笔记
- java正则表达式判断是否在0到65535之间
- 动态代理(JDK和CGLIB)
- 转:Java生成图片验证码(有点仿QQ验证码的意思)
- java设计模式之代理模式
- Java Jsoup抓取符合指定大小的网页的图片,并保存在本地磁盘
- Eclipse打jar包在控制台执行
- java基础笔记之static
- spring只是一个框架
- Lambda的使用与实战
- JDK1.8源码学习之 HashMap.java
- JAVA DAY3
- Maven + Eclipse + Android 环境搭建
- J2SE(十二)Java之反射
- java.util.Scanner应用详解
- 使用Java的嵌套循环打印出平行四边形、等腰三角形、棱形、矩形的星星图案(Java工程师面试必备)
- java动态代理(JDK和CGlib)
- java测试代码段执行时间
- Elasticsearch Java-API CRUD Java操作Elasticsearch
- eclipse中集成maven插件时的问题总结