vue实现上传文件_vue工程如何打包部署运行

vue实现上传文件_vue工程如何打包部署运行SpringMVC+vue实现文件上传后台前端异步上传(后端springmvc加前端vue)后台采用springmvc,实现获取到相对路径和绝对路径存储为json传到前端作为新增到数据库里的数据//文件上传@PostMapping(value=”/upLoading”)@ResponseBodypublicResult<HashMap<String,String>>upLoading(MultipartFilefile,Http

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

SpringMVC+vue实现文件上传

异步上传(后端springmvc加前端vue)

后台

采用springmvc,实现获取到相对路径和绝对路径存储为json传到前端作为新增到数据库里的数据

//文件上传
@PostMapping(value = "/upLoading")
@ResponseBody
public Result<HashMap<String,String>> upLoading(MultipartFile file,HttpServletRequest request){ 

System.out.println("进入文件上传");
//定义要返回的绝对路径和相对路径
String absolutePath=null;
String relativePath=null;
Result<HashMap<String,String>> result = new Result<HashMap<String,String>>();
//获得服务器所在路径
String path = request.getSession().getServletContext().getRealPath("/")+file.getOriginalFilename();
//获得上传文件的文件名
String fileName=file.getOriginalFilename();
System.out.println(fileName);
//xxxxx.xxx
//UUID.randomUUID()
//UUID:随机生成一段字符串,16-18位由字母加数字拼接而成,保证10年不重复
fileName = UUID.randomUUID()+fileName.substring(fileName.lastIndexOf("."));
System.out.println(fileName);
//设置绝对路径和文件存储路劲
absolutePath = "D:\\ideaProjects\\SSMApp\\src\\main\\web\\statics\\uploadfiles\\"+fileName;
//设置相对文件路径
relativePath="statics\\uploadfiles\\"+fileName;
System.out.println(path);
HashMap<String ,String> map=new HashMap<String, String>();
map.put("absolutePath",absolutePath);
map.put("relativePath",relativePath);
//保存文件
try { 

file.transferTo(new File(absolutePath));
result.setResult(map);
result.setMessage("文件上传成功");
}catch (Exception exce){ 

result.setMessage("文件上传失败:"+exce.getMessage());
result.setSuccess(false);
System.out.println(exce.getMessage());
}
return result;
}

前端

部分前端(重要实现前端部分)

<div class="item form-group"><!--for="name"-->
<label class="control-label col-md-3 col-sm-3 col-xs-12" >LOGO图片 <span class="required">*</span>
</label>
<div class="col-md-6 col-sm-6 col-xs-12"><!--type="file" -->
<input type="file" @change="upLoading($event)" v-model="params.file" class="form-control col-md-7 col-xs-12" name="logoPicPath" required="file" id="logoPicPath" accept="jpg,jpeg,png"/>
<span style="display: none" v-model="params.logoPicPath">
<span style="display: none" v-model="params.logoLocPath">
<span class="add-file-right-more">支持扩展名:jpg,jpeg,png</span>
${fileUploadError }
</div>
</div>
<script> new Vue({ 
 params:{ 
 logoPicPath:"", //相对路径 logoLocPath:"" //绝对路径 } }), methods:{ 
 //文件上传 upLoading(even){ 
 this.params.file=even.target.files[0]; console.log(this.params.file.name) console.log("进入文件上传") var forms = new FormData() forms.append("file",this.params.file,this.params.file.name); var configs = { 
 headers: { 
 "Content-Type": "multipart/form-data" } }; console.log(this.params.file); axios.post("/dev/upLoading",forms ,configs).then(res=>{ 
 console.log(res) this.params.logoPicPath=res.data.result.relativePath; this.params.logoLocPath=res.data.result.absolutePath; //绝对 console.log(res) }) } } </script>
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/170639.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 想发表文章在哪里发表_微信朋友圈怎么弄的置顶文字

    想发表文章在哪里发表_微信朋友圈怎么弄的置顶文字  因为博客中的文章已经越来越来了,为了便于文章检索,特整理本文,欢迎收藏!!!Java核心1.JDK8新特性Lambda表达式讲解接口新特性函数式接口方法引用Stream流Optional工具类介绍新的日期时间工具类介绍注解的增强2.Java核心Java集合核心内容之数组和链表Java集合核心内容之二叉树2-3-4树详解红黑树详解精讲红黑树删除操作剖析反射的本质3.设计模式3.1创建型模式  都是用来帮助我们创建对象的!模式地址单例模式ht

  • Struts2 入门学习总结一

    Struts2 入门学习总结一一、Struts2简介Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts2是Struts的下一代产品,这个框架充分发挥了Struts1和WebWork这两种技术的优势,抛弃原来Struts1的缺点,使得Web开发更加容易。struts2还有以下…

    2022年10月30日
  • 禁爬虫robots.txt文件[通俗易懂]

    禁爬虫robots.txt文件[通俗易懂]禁止所有爬虫修改根目录robots.txt文件删除所有添加:User-agent:*Disallow:/检测地址:https://tools.aizhan.com/robots/www.lilysilk.org/

  • MQTTBox客户端工具(Windows版)

    MQTTBox是一个带有可视化的界面的MQTT的客户端工具.工具特性:创建连接到相同或不同MQTT代理的多个并发MQTT客户端TCP,SSL/TLS,Web套接字和安全的Web套接字支持创建具有多种连接设置的MQTT客户端-最后的遗留,keepAlive,连接超时等等用户名/密码认证连接,断开连接,重新连接MQTT客户端到代理的选项将消息从同一MQTT客户端发布到多个主题从同一MQTT客户端订阅多个主题支持单级(+)和多级(#)订阅主题单击即可复制,重新发布有效负载查看已发

  • web 打印控件_JS插件

    web 打印控件_JS插件 平常浏览网页和文档的时候,随处可见打印两个字,有时候不小心点到,就会弹出一个打印的页面,如果连接了打印机,可以直接调用到打印机进行真实的打印。做为开发人员我们在网页开发过程中经常会有打印页面的需求,目前我正在做浏览器端采用JS方式实现打印这么一个功能,通过JS来实现的方法有很多,这里我分享一下我自已采用的方法,供大家参考。为了节约开发时间,我采用的是第三方打印软件“老牌打印控件WebPrinter”。新版现在已更名为“智睦云打印”,在原来的基础上增加了云打印机的支持,“智睦云打印”可以应用在本..

    2022年10月29日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号