相关代码示例:

html代码片段:

名称

class="layui-input">

描述

文件

请选择配置文件

立即提交

重置

js代码片段:

//上传配置文件

$("#save_config_file").click(function () {

var name = $("#config_name").val();

var desc = $("#config_desc").val();

var userId = $("#userId").val();

var formData = new FormData($("#uploadForm")[0]);

formData.append("name",name);

formData.append("desc",desc);

formData.append("userId",userId);

$.ajax({

url: 'http://localhost:8090/bfi-web/api/ide/settings/uploadFiles',

type: 'POST',

data: formData,

async: false,

cache: false,

contentType: false,

processData: false,

success: function (returndata) {

layui.use('layer', function () {

var layer = layui.layer;

layer.msg(returndata.returnMsg, {

icon: 1

});

});

setTimeout(() => {

closeLayui();

}, 300);

},

error: function (returndata) {

console.log("====================Error==========================");

}

});

});

Java代码片段(这里是SpringMVC+腾讯云对象存储,可将其更换为其它对象存储,如七牛云、ftp或者是其它对象存储):

/**

* 上传文件

* @param request

* @param file

* @return

*/

@PostMapping(value="/uploadFiles",produces="application/json;charset=utf-8")

public JSONObject upModify(HttpServletRequest request, MultipartFile file) {

JSONObject json = new JSONObject();

try {

COSClientUtil cosClientUtil = new COSClientUtil();

if(!file.isEmpty()) {

String name = cosClientUtil.uploadFile2Cos(file);

String desc = request.getParameter("desc");

String names = request.getParameter("name");

String userId = request.getParameter("userId");

logger.info("desc:"+desc);

logger.info("names:"+names);

logger.info("userId:"+userId);

//图片名称

logger.info("name = " + name);

//上传到腾讯云

String imgUrl = cosClientUtil.getImgUrl(name);

logger.info("imgUrl = " + imgUrl);

//数据库保存图片地址

String dbImgUrl = imgUrl.substring(0,imgUrl.indexOf("?"));

logger.info("dbImgUrl = " + dbImgUrl);

IdeSettings ide = new IdeSettings();

ide.setName(names);

ide.setContent(dbImgUrl);

ide.setUserId(userId);

ide.setUpdateTime(DateUtil.date().toString());

ide.setUploadTime(DateUtil.date().toString());

ide.setDescription(desc);

boolean isAddConfig = ideSettingsService.insert(ide);

logger.info(isAddConfig);

if(isAddConfig) {

json.put(CommonEnum.RETURN_CODE, "000000");

json.put(CommonEnum.RETURN_MSG, "上传成功");

}else {

json.put(CommonEnum.RETURN_CODE, "222222");

json.put(CommonEnum.RETURN_MSG, "上传失败");

}

}else {

json.put(CommonEnum.RETURN_CODE, "111111");

json.put(CommonEnum.RETURN_MSG, "参数异常");

}

} catch (Exception e) {

e.printStackTrace();

json.put(CommonEnum.RETURN_CODE, "333333");

json.put(CommonEnum.RETURN_MSG, "特殊异常");

}

return json;

}

另一种示例:

1.jsp

$("#cxsc").click(function(){

var bankId = $("#bankId").val();

var formdata = new FormData();

formdata.append('logo', $('#btnFile').get(0).files[0]);

formdata.append('bankId', bankId);

$.ajax({

type: 'POST',

url: './uploadLogo',

contentType : false,

data : formdata,

processData : false,

dataType: "json",

success: function (data) {

$("#logoImg").attr('src','${_b}/upload/banklogo/'+data.msg);

},

error : function(data) {

alert('上传失败!');

}

});

上传

#if>

#if>

2.controller

@RequestMapping(value = "/uploadLogo", method = {RequestMethod.POST})

public void uploadLogo(

@RequestParam(value = "bankId", required = true) String bankId,

@RequestParam("logo") MultipartFile logo,

HttpServletRequest request, HttpServletResponse response, ModelMap model) {

Json json = new Json();

BankManage bankManage = bankManageService.getById(bankId);

if (bankManage != null) {

try {

if (!logo.isEmpty()) {

String relativePath = "/upload/banklogo";

// 旧图片路径

String absolutePath = request.getSession().getServletContext().getRealPath(relativePath)+"\\"+bankManage.getLogoImg();

File oldfile = new File(absolutePath);

if (oldfile.exists()) {

oldfile.delete(); // 删除旧图片

}

String newPath = request.getSession().getServletContext().getRealPath(relativePath)+"\\"+logo.getOriginalFilename();

File newFile = new File(newPath);

logo.transferTo(newFile);

bankManage.setLogoImg(logo.getOriginalFilename());

bankManageService.update(bankManage);

json.setMsg(logo.getOriginalFilename());

writeJson(request, response, json);

}else {

json.setMsg("上传失败!");

writeJson(request, response, json);

}

}catch (Exception e) {

e.printStackTrace();

logger.error(e);

}

}

}

以上就是Java使用Ajax异步上传文件的详细内容,更多关于Java 用Ajax上传文件的资料请关注脚本之家其它相关文章!

java获取ajax上传的文件,Java使用Ajax异步上传文件相关推荐

  1. java获取网络图片(比如微信授权后的头像)上传至linux服务器

    //原生获取微信信息CodeWxUserInfoVo,然后将头像上传至自己的linux服务器 //因为上传用的是 MultipartFile file所以我下载图片后返回了MultipartFile文 ...

  2. jq ajax异步上传文件,jQuery插件ajaxFileUpload异步上传文件

    AjaxFileUpload.js并不是一个很出名的插件,只是别人写好的放出来供大家用,原理都是创建隐藏的表单和iframe然后用JS去提交,获得返回值. 当初做了个异步上传的功能,选择它因为它的配置 ...

  3. java获取当前项目相对路径,在JAVA文件中获取该项目的相对路径

    在JAVA文件中获取该项目的相对路径 1.基本概念的理解 绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如: C:\xyz\test.txt 代表了test.t ...

  4. java获取b站动态列表地址,java获取B站弹幕文件的两种方案

    (一)实现思路 1,定位弹幕文件 一般用json或xml格式来保存弹幕,所以我们只要找到视频网页里面的xml文件或json文件,就能定位到弹幕文件. 2,解析弹幕文件 然后通过jsoup解析文件,提取 ...

  5. linux java 获取路径怎么写_linux中java获取路径的实例代码

    linux中java获取路径怎么写? 在Unix/Linux中,路径的分隔采用正斜"/",比如"cd /home/java". 在java的代码开发中 \ 是代 ...

  6. linux java 获取路径怎么写_linux中java获取路径怎么写?

    linux中java获取路径怎么写? 在Unix/Linux中,路径的分隔采用正斜"/",比如"cd /home/java". 在java的代码开发中 是代表转 ...

  7. java获取机器号_(转)JAVA获得机器码的实现

    http://yangshangchuan.iteye.com/blog/2012401 首先,定义了一个统一的接口,以支持不同操作系统不同实现的透明切换: Java代码  收藏代码 /** *生成机 ...

  8. java 获取linux主机名,linux下java获取hostname

    linux下java获取hostname [2021-01-29 19:46:41]  简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace( ...

  9. java 获取spring对象数组_解析Java中如何获取Spring中配置的bean

    解析Java中如何获取Spring中配置的bean Java中如何获取Spring中配置的bean?下面是由百分网小编为大家整理的解析Java中如何获取Spring中配置的bean,喜欢的可以收藏一下 ...

  10. java获取主机信息大全,网络编程:Java获取网络主机信息

    java.net.InetAddress类表示互联网协议 (IP) 地址. 有两个子类:Inet4Address, Inet6Address 通过 InetAddress可以方便获取一个域名下的IP, ...

最新文章

  1. 奇点云发布三大无人零售终端产品,“云”“端”结合赋能零售商
  2. Fibonacii数列,兔子问题
  3. 如何查看jar包里的源码
  4. des加密 ios 和java_三重Des对称加密在Android、Ios 和Java 平台的实现
  5. Linux系统编程33:进程信号之详解信号的捕捉过程,用户态和内核态及其切换,sigaction和signal
  6. 浅析Kubernetes资源管理
  7. 项目管理学习 总结(一)
  8. postgreSQL源码分析——索引的建立与使用——各种索引类型的管理和操作(1)
  9. xdcms_3.0.1 | 代码审计
  10. flash人物原地走路_Flash怎么制作一个行走的小人动画?
  11. AgentWeb url监听问题
  12. 免费视频压缩软件实现压缩视频不损画质的技巧
  13. 图形文件的自由转换:DXF转PLT、DWG转其它格式......
  14. 使用LabelMe标注目标检测数据集并转换为VOC2017格式
  15. 再迎顶尖科学家,百度研究院为何如此吸引大师级AI人才?
  16. maximo工作笔记
  17. Android 内外边距
  18. 计算机软考什么时候出分,2020年计算机软考什么时候出成绩,怎么查成绩?|...
  19. 【网安神器篇】——Whatweb指纹识别工具
  20. 软件测试中一般术语的的英文缩写

热门文章

  1. Revit:概念建模环境技能学习 Revit: Conceptual Modeling Environment
  2. Codeforces Round #447 (Div. 2) B. Ralph And His Magic Field 数学
  3. 【机器学习基石笔记】八、噪声和错误
  4. easyui源码翻译1.32--Messager(消息窗口)
  5. MTD NANDFLASH驱动相关知识介绍
  6. 整理收集49条JQuery代码小结
  7. 翻译-高质量JavaScript代码书写基本要点(转载)
  8. BigPipe:高性能的“流水线技术”网页
  9. CI框架如何删除地址栏的 index.php
  10. .Net 中字符串性能