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

SpringBoot+Vue实现简单的文件上传(txt篇)

SpringBoot+Vue实现简单的文件上传

1 环境 SpringBoot 3.2.1,Vue 2,ElementUI
2 页面在这里插入图片描述

3 效果:只能上传txt文件且大小限制为2M,选择文件后自动上传。
4 前端代码

<template><div class="container"><el-uploadclass="upload-demo"dragaction="/xml/fileUpload"multipleaccept=".txt":before-upload="beforeUpload"><i class="el-icon-upload"></i><div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div><div class="el-upload__tip"><slot name="tip" > 只能上传 txt 文件,且不超过2M</slot></div></el-upload></div>
</template><script>
// import axios from "axios";export default {name: 'App',data() {const data = [];return {}},watch: {},created() {},methods: {beforeUpload(file){console.log(file.type)const isText = file.type == "text/plain"const isLt2M = file.size /1024 /1024 < 2if(!isText){this.$message.error("只能上传txt文件!")}if(!isLt2M){this.$message.error("文件大小超过限制!")}}}
}
</script><style>
.container {display: flex;
}
</style>

5 后端代码

package org.wjg.onlinexml.controller;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import org.wjg.onlinexml.po.Result;import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;@RestController
public class FileController {@RequestMapping("/fileUpload")private Result getXml(@RequestParam("file") MultipartFile file) {if (file.isEmpty()) {return Result.builder().code(500).msg("上传失败!").build();}try (BufferedReader reader = new BufferedReader(new InputStreamReader(file.getInputStream()))) {String line;while ((line = reader.readLine()) != null) {// 在这里处理读取到的每一行内容System.out.println(line);}} catch (IOException e) {e.printStackTrace();}return Result.builder().code(200).msg("上传成功").build();}
}

相关文章:

  • 华为USG6000V防火墙v1
  • 【区块链 + 智慧政务】城市公积金中心区块链基础服务平台 | FISCO BCOS应用案例
  • 网络安全工作者如何解决网络拥堵
  • Centos---命令详解 vi 系统服务 网络
  • 【C语言】深入解析选择排序
  • 音视频入门基础:H.264专题(13)——FFmpeg源码中通过SPS属性获取视频色彩格式的实现
  • PyTorch张量创建和随机数生成器算法
  • 【区块链 + 智慧政务】区块链 +ETC 下一代公路联网收费关键技术优化项目 | FISCO BCOS应用案例
  • 去除重复数字
  • 浅聊授权-spring security和oauth2
  • K8S系列-Kubernetes基本概念及Pod、Deployment、Service的使用
  • 新增支持GIS地图、数据模型引擎升级、增强数据分析处理能力
  • 内网安全:权限维持的各种姿势
  • GaussDB DWS 详解
  • 基坑安全:自动化监测系统的革新力量
  • ES6语法详解(一)
  • Java面向对象及其三大特征
  • MySQL QA
  • mysql_config not found
  • Perseus-BERT——业内性能极致优化的BERT训练方案
  • PHP的Ev教程三(Periodic watcher)
  • SAP云平台里Global Account和Sub Account的关系
  • Spring Boot MyBatis配置多种数据库
  • Traffic-Sign Detection and Classification in the Wild 论文笔记
  • 阿里云容器服务区块链解决方案全新升级 支持Hyperledger Fabric v1.1
  • 函数式编程与面向对象编程[4]:Scala的类型关联Type Alias
  • 聚簇索引和非聚簇索引
  • 前端路由实现-history
  • 树莓派 - 使用须知
  • 思否第一天
  • 运行时添加log4j2的appender
  • 在GitHub多个账号上使用不同的SSH的配置方法
  • ​你们这样子,耽误我的工作进度怎么办?
  • #Lua:Lua调用C++生成的DLL库
  • #Ubuntu(修改root信息)
  • #前后端分离# 头条发布系统
  • (2.2w字)前端单元测试之Jest详解篇
  • (C语言)strcpy与strcpy详解,与模拟实现
  • (ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY)讲解
  • (初研) Sentence-embedding fine-tune notebook
  • (第一天)包装对象、作用域、创建对象
  • (二)构建dubbo分布式平台-平台功能导图
  • (附源码)springboot 校园学生兼职系统 毕业设计 742122
  • (七)Activiti-modeler中文支持
  • (七)Java对象在Hibernate持久化层的状态
  • (十八)devops持续集成开发——使用docker安装部署jenkins流水线服务
  • (一) springboot详细介绍
  • (译) 函数式 JS #1:简介
  • .NET BackgroundWorker
  • .NET CF命令行调试器MDbg入门(二) 设备模拟器
  • .Net Core 微服务之Consul(二)-集群搭建
  • .NET/C# 使窗口永不激活(No Activate 永不获得焦点)
  • .NET程序集编辑器/调试器 dnSpy 使用介绍
  • .net反混淆脱壳工具de4dot的使用
  • @Autowired和@Resource装配