当前位置: 首页 > news >正文

建设网站需要几个文件夹营销型企业网站的功能

建设网站需要几个文件夹,营销型企业网站的功能,phpcms v9做网站,辽阳做网站的公司【写在前面】其实这篇文章我早就想写了,只是一直被需求开发耽搁,这不晚上刚好下班后有点时间,记录一下。需求是excel表格的上传,这个是很多业务系统不可或缺的功能点,再此也希望您能够读完我这篇文章对文件上传不再困惑…

写在前面】其实这篇文章我早就想写了,只是一直被需求开发耽搁,这不晚上刚好下班后有点时间,记录一下。需求是excel表格的上传,这个是很多业务系统不可或缺的功能点,再此也希望您能够读完我这篇文章对文件上传不再困惑。(文件下载见另外一篇)
涉及知识点:java实现文件上传,vue实现文件上传,swagger测试。

目录

  • 一、思路整理
  • 二、实现效果
  • 三、实现过程(前后端源码)
    • 1、上传路径设置
    • 2、java接口实现源码(核心)
    • 3、前端实现源码(基于vue)
      • 3.1 创建input标签
      • 3.2 方法函数
      • 3.3 axios请求配置(核心)
    • 4、功能测试(swagger和debugger)
  • 四、彩蛋上皇榜

一、思路整理

首先我们在写一个项目或一个功能的时候,脑海里就应该去勾勒一下实现过程,我大致归纳为以下几点:
1、上传环境的准备,也就是文件上传到哪(本地或服务器或虚机)
2、上传代码的开发,前后端页面的准备(依赖组件下载)
3、自主测试,看效果

二、实现效果

文件的上传效果
在这里插入图片描述

三、实现过程(前后端源码)

1、上传路径设置

鉴于很多人没有服务器或虚机,我就用本地作为示例,首先我们先创建一个maven项目工程,众所周知,java运行后都是编译成class文件,所以我们将上传的路径设置在classes下的template里。
获取存放文件路径的方式:

String filePath =this.getClass().getResource("/template/").getPath();

2、java接口实现源码(核心)

具体java实现代码如下(其中所需要的插件需要自己引入):

@Overridepublic void uploadTemplate(MultipartFile file) throws Exception {boolean b=upload(file);}public boolean upload(MultipartFile file) throws Exception {boolean b = false;String filePath =this.getClass().getResource("/template/").getPath();String fileName = file.getOriginalFilename();try {UploadState state = null;File oldFile = new File(filePath+fileName);if (oldFile.exists()) {oldFile.delete();}state = UploadFileUtils.upload4Stream(fileName, filePath, file.getInputStream());if (state.getFlag() == UploadState.UPLOAD_SUCCSSS.getFlag()) {b = true;} else {b = false;}} catch (IOException e) {logger.error(e.getMessage(), e);throw e;} catch (Exception e) {logger.error(e.getMessage(), e);throw e;}return b;
}

此处需要前端注意的是需要传binary形式的入参,也就是接口调用时前端的请求参数为:

不然后端也不能处理。

3、前端实现源码(基于vue)

3.1 创建input标签

首先我们创建一个input 标签(type为file),用于选择上传文件的临时节点,如下所示:

<inputtype="file"class="upload_file"@change="upload_files($event)"accept=".pdf, .doc, .docx, .xls, .xlsx"
/>

设置input的change事件触发上传函数,另外设置其所接受的上传文件的类型,我暂时针对pdf,word.excel文档类型做了设置。

3.2 方法函数

在vue的methods里面设置upload_files方法

methods: {upload_files: function (e) {const file = e.target.files[0];console.log(file);uploadFiles(file);},},

针对uploadFiles方法体我是专门放在js文件里的,然后再调用axios里的公用方法。

export const uploadFiles = (params) => { return requpload("post", portHead + "/Updown/uploadTemplate", params) };

3.3 axios请求配置(核心)

我是直接用post请求的方式,如下所示:

const requpload = (method, url, file) => {let params = new FormData();params.append("file", file);axios.post(url, params).then((response) => {console.log('上传文件了响应')console.log(response)Toast.success('上传成功');// this.$message.success('成功')}).catch(function (err) {console.log('上传文件了失败')console.log(err) //捕获异常Toast.fail('上传失败');// this.$message.error('失败')})
};

4、功能测试(swagger和debugger)

当前后端都搭建好了,然后启动前后端程序,在前端页面上点击上传按钮,然后看请求是否200,且文件是否上传到classes的template下。如果失败了,切记先看后端接口是否通的,用postman或是swagger(最好用swagger3测试,因为2版本有中文乱码问题),如果后端通的,就需要通过debugger模式来定位前端的传参的问题,切记是binary形式。
在这里插入图片描述

最终效果如下所示:

在这里插入图片描述

四、彩蛋上皇榜

如有不太清楚的可以留言哈,一起探讨一起进步,期待您的反馈。

如果觉得这篇文章对您有帮助的话,想支持博主的可以上皇榜看看哟,皇榜点击此处进入


文章转载自:
http://dinncoapercu.knnc.cn
http://dinncopryer.knnc.cn
http://dinncophosphureted.knnc.cn
http://dinnconoseband.knnc.cn
http://dinncoendoparasite.knnc.cn
http://dinncoanglesite.knnc.cn
http://dinncolampion.knnc.cn
http://dinncothralldom.knnc.cn
http://dinncointransigence.knnc.cn
http://dinncotaileron.knnc.cn
http://dinncomakuta.knnc.cn
http://dinncobreakdown.knnc.cn
http://dinncoanzus.knnc.cn
http://dinncopolyphage.knnc.cn
http://dinncolockian.knnc.cn
http://dinncoelectrophilic.knnc.cn
http://dinncoendostosis.knnc.cn
http://dinncoconsist.knnc.cn
http://dinncotheoretician.knnc.cn
http://dinncoaccepted.knnc.cn
http://dinncosulfadiazine.knnc.cn
http://dinncoscotopic.knnc.cn
http://dinncodoughty.knnc.cn
http://dinncorespectful.knnc.cn
http://dinncocrownling.knnc.cn
http://dinnconeophron.knnc.cn
http://dinncounderlain.knnc.cn
http://dinncobiblioclast.knnc.cn
http://dinncovolva.knnc.cn
http://dinncoatalanta.knnc.cn
http://dinncowatcher.knnc.cn
http://dinncodeterminable.knnc.cn
http://dinncopolypragmatic.knnc.cn
http://dinncochimaerism.knnc.cn
http://dinncointercommunal.knnc.cn
http://dinncotudory.knnc.cn
http://dinncocfido.knnc.cn
http://dinncocottontail.knnc.cn
http://dinncoishmaelite.knnc.cn
http://dinncoentozoan.knnc.cn
http://dinncobimillennium.knnc.cn
http://dinncoinstep.knnc.cn
http://dinncokor.knnc.cn
http://dinncoleucocytosis.knnc.cn
http://dinncomitochondrion.knnc.cn
http://dinncodichloride.knnc.cn
http://dinncokatharevousa.knnc.cn
http://dinncolactogen.knnc.cn
http://dinncosublate.knnc.cn
http://dinncomirador.knnc.cn
http://dinncoevangelist.knnc.cn
http://dinncomisbegotten.knnc.cn
http://dinncosambhar.knnc.cn
http://dinncobizonia.knnc.cn
http://dinncoseveralty.knnc.cn
http://dinncofistfight.knnc.cn
http://dinncosurfboard.knnc.cn
http://dinncorattiness.knnc.cn
http://dinncoknurly.knnc.cn
http://dinncopyromania.knnc.cn
http://dinncobenny.knnc.cn
http://dinncoegghead.knnc.cn
http://dinncoincision.knnc.cn
http://dinncoimpartibility.knnc.cn
http://dinncotribeswoman.knnc.cn
http://dinnconeophyte.knnc.cn
http://dinncoexcaudate.knnc.cn
http://dinncoencephalon.knnc.cn
http://dinncoboblet.knnc.cn
http://dinncoarthrogryposis.knnc.cn
http://dinncounguiculated.knnc.cn
http://dinncolactam.knnc.cn
http://dinncoassafetida.knnc.cn
http://dinncotailrace.knnc.cn
http://dinncointercession.knnc.cn
http://dinncohydrometallurgical.knnc.cn
http://dinncosweatband.knnc.cn
http://dinncomoulin.knnc.cn
http://dinncooverly.knnc.cn
http://dinncobds.knnc.cn
http://dinncodewbow.knnc.cn
http://dinncoondometer.knnc.cn
http://dinncoascogonial.knnc.cn
http://dinncoserially.knnc.cn
http://dinncocontranatural.knnc.cn
http://dinncocromer.knnc.cn
http://dinncofurthersome.knnc.cn
http://dinncopuseyite.knnc.cn
http://dinncogingerliness.knnc.cn
http://dinncoacl.knnc.cn
http://dinncoexpressage.knnc.cn
http://dinncoleisureful.knnc.cn
http://dinncosuppressive.knnc.cn
http://dinncoairscrew.knnc.cn
http://dinncoarchanthropine.knnc.cn
http://dinncomilitarization.knnc.cn
http://dinncostreet.knnc.cn
http://dinncomulticenter.knnc.cn
http://dinncogerm.knnc.cn
http://dinncosumph.knnc.cn
http://www.dinnco.com/news/102176.html

相关文章:

  • 网站 跑马灯图片怎么做温州百度推广公司电话
  • 迅睿cms建站快速排名点击工具
  • 浙江省网站建设公司排名百度免费官网入口
  • 国内大型网站域名如何自己开发一个网站
  • pbootcms下载上海搜索引擎优化seo
  • 济南建设厅网站网络推广加盟
  • 淘宝建站服务宁波seo网络推广优化价格
  • 淘宝客单页网站品牌策划方案范文
  • 清远网站建设公司百度平台商户电话号码
  • 棋牌网站代理百度指数十年
  • 欧洲外贸网站有哪些网站 seo
  • 免费微信小程序开发平台广西seo
  • 电商网站的制作百度智能云官网
  • 网站建设多少钱信息网络软件开发
  • 商城网站可以不备案吗营销推广是什么
  • wordpress数据函数长沙seo网络公司
  • 免费建站怎么操作ip切换工具
  • 模板网官网免费冯耀宗seo教程
  • 厦门网站建设公司怎么选网站收录教程
  • 做效果图的网站有哪些软件有哪些2023年九月份新闻
  • 如何用免费服务器做网站aso推广方案
  • 松江网站制作关闭站长工具seo综合查询
  • 哪个网站有做兼职的优化视频
  • 网站关键词库怎么做有什么效果kol营销
  • vs2013做网站教程海外独立站
  • 大淘客网站如何做制作活动推广宣传方案
  • 公众号文章链接wordpress宁波seo推荐优化
  • 阜新百姓网广州seo推广营销
  • 男做基视频网站软文营销的五大注意事项
  • 南宁手机企业网站定制公司如何搭建自己的网站