JAVA 前端上传文件,后端解析文件流并写入数据库_后端怎么把前端传的文件导入-程序员宅基地

技术标签: MultipartFile  java  前端  

controller层: 通过文件流的方式 读取 前端上传的文件 MultipartFile 

上传文件:utf-8编码的csv文件

    @ApiOperation(value = "导入文件")
    @RequestMapping(value = "/updateFieldMapFromCsvfile", method = RequestMethod.POST)
    public BaseResult updateFieldMapFromCsvfile(@RequestParam("file") MultipartFile multipartFile) throws IOException, ParseException {
        BaseResult baseResult = new BaseResult();
        BaseController.execute(null, new ControllerCallback<Long>() {
            @Override
            public void check() {
            }
            @Override
            public Long execute() throws IOException {
                // 更新
                return nodeService.updateFieldMapFromCsvfile(multipartFile);
            }
        }, baseResult);
        return baseResult;

    }

实现层:

   public long updateFieldMapFromCsvfile(MultipartFile multipartFile) throws IOException {
        Reader reader = new InputStreamReader(multipartFile.getInputStream(), "UTF-8");
        BufferedReader br = new BufferedReader(reader);
        br.readLine();//br是迭代器类型的,每readline一次,行数指向next,用于过滤第0行标题
        String line ;
        while ((line = br.readLine()) != null) {
            SqDataNodeFieldMapDO eachData = new SqDataNodeFieldMapDO();
            String item[] = line.split(",");
            eachData.setId(Long.parseLong(item[0]));
            eachData.setOutputNode(item[3]);
            eachData.setOutputField(item[4]);
            eachData.setOutputValueType(item[5]);
            eachData.setSourceNode(item[6]);
            eachData.setSourceField(item[7]);
            eachData.setSourceValueType(item[8]);
            eachData.setLastModer(item[9]);
            eachData.setLinkCode(item[10]);
            eachData.setBizCode(item[11]);
            eachData.setValueUdf(item[12]);
            eachData.setValueCaliber(item[13]);
            fieldMapConfigService.updateFieldMapFromCsv(eachData);//更新数据库
        }
        return 0;
    }

postman调用调试

 

 

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Strive_0902/article/details/125818231

智能推荐

联想计算机管理员权限设置,Windows XP系统如何新建administrator管理员权限账户-程序员宅基地

文章浏览阅读1.6k次。知识点分析:对于Windows XP系统,有很多种创建用户账户的操作方法。其中包括:使用CMD命令行的net命令进行,也可以使用控制面板的图形界面进行,还可以使用计算机管理控制台中的“本地用户和组”进行。其中后者自定义功能多,本文以此为例进行操作示范。操作步骤:1. 在系统桌面找到并使用鼠标右键点击“我的电脑”图标,然后在弹出菜单中选择“管理(G)”,如下图所示:2. 在弹出的计算机管理窗口,展开..._xp 开启管理员账户

socket 及 websocket的握手过程_websocket三次握手详解-程序员宅基地

文章浏览阅读6k次。一、WebSocket和HTTP之间的关系WebSocket和HTTP一样都是基于TCP的应用层协议。WebSocket协议和HTTP协议是两种不同的东西。客户端开始建立WebSocket连接时要发送一个header标记了 Upgrade的HTTP请求,表示请求协议升级。所以服务器端做出响应的简便方法是,直接在现有的HTTP服务器软件和现有的端口上实现WebSocket协议,然后再回一个状态..._websocket三次握手详解

小学计算机反思案例,小学数学有效教学案例及反思-程序员宅基地

文章浏览阅读210次。小学数学有效教学案例及反思《植树问题》教学设计及反思一、教学目标:1、知识与技能目标:通过动手实践,合作探究,让学生在做数学的过程中经历由现实问题到数学建模,理解并掌握植树棵数与间隔数之间的关系。2、过程与方法目标:通过学生自主实小学数学教学案例及反思小学数学教学案例及反思学生的认知结构,只有在经历学习活动的过程中主动才能完成。只有学生本人的积极思考、主动探索,才能有所发现、有所创新。但在不少学校..._小学数学教学案例博客

HBuilder的下载与使用(详细步骤)_hbuilder官网-程序员宅基地

文章浏览阅读10w+次,点赞125次,收藏651次。一、HBuilder IDE的下载HBuilder下载官网地址:在地址栏中直接输入https://www.dcloud.io或者直接点击下面的链接DCloud - HBuilder、HBuilderX、uni-app、uniapp、5+、5plus、mui、wap2app、流应用、HTML5、小程序开发、跨平台App、多端框架进入官网,免费下载最新版的HBuilder。HBuilder目前有两个版本,一个是windows版,一个是mac版。下载的时候根据自己的电脑选择适合自己的版本。_hbuilder官网

centos7删除文件夹命令_CentOS7文件(文件夹)复制、移动与删除命令介绍-程序员宅基地

文章浏览阅读9k次,点赞2次,收藏10次。在使用Centos7系统时,一般都需要管理大量的文件(文件夹),这样就要需要用到一些文件管理命令。本文以第一、文件(文件夹)复制命令命令格式:cp [-adfilprsu] 源文件(source) 目标文件(destination)cp [option] source1 source2 source3 … directory-adfilprsu参数说明:-a:是指archive的意思,也说是指复制..._centos7删除文件夹

上下跳动的箭头 css_h5 箭头抖动-程序员宅基地

文章浏览阅读2.9k次。在H5场景动画时,常常会用到着一样一个效果,箭头持续上下跳动来引导用户上下滑动整个页面&lt;!DOCTYPE html &gt;&lt;html&gt; &lt;head&gt; &lt;meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&gt; &lt;tit_h5 箭头抖动

随便推点

虚幻引擎5 (UE5):完整的初学者学习教程_虚幻5教程-程序员宅基地

文章浏览阅读4.2w次,点赞22次,收藏164次。流派:电子学习| MP4 |视频:h264,1280×720 |音频:AAC,44.1 KHz语言:英语+中英文字幕(根据原英文字幕机译更准确)|大小解压后:6.26 GB |时长:7h 32m虚幻引擎5的最快入门方法云桥网络 平台获取教程你会学到什么虚幻引擎虚幻引擎5游戏设计建筑设计产品设计描述欢迎初学者全面了解新的虚幻引擎5。专业人士和初学者都可以使用UE5,借助新的Lumen Lighting System和Nanite虚拟几何引擎,创建令人惊艳的实时内容。作为一名游戏、架构.._虚幻5教程

c语言json库如何编译,C语言的JSON库Jansson-程序员宅基地

文章浏览阅读473次。Jansson概述Jansson是一个C语言库,用于编码,解码和处理JSON数据。其主要特点和设计原则是:简单直观的API和数据模型全面的文档不依赖其他库完全支持Unicode(UTF-8)广泛的测试套件Jansson的API稳定可靠,可广泛应用于生产中。它可以在多种平台上运行,包括多种类Unix系统和windows。它适用于任何系统,包括台式机,服务器和小型嵌入式系统。Jansson是以MIT协..._jansson库编译

学术与产业的碰撞:AI TIME 走进浙大专场活动-程序员宅基地

文章浏览阅读405次。点击蓝字关注我们AI TIME欢迎每一位AI爱好者的加入!2021 年 7 月 13 日,「AI TIME 走进浙大」论坛在浙江大学公共管理学院隆重举行。此次活动得到了浙江大学计算机学院人..._kdd 杨洋 电力异常

PHP加密解密函数authcode-程序员宅基地

文章浏览阅读46次。核心提示:康盛的 authcode 函数可以说对中国的PHP界作出了重大贡献。包括康盛自己的产品,以及大部分中国使用PHP的公司都用这个函数进行加密,authcode 是使用异或运算进行加密和解密。康盛的 authcode 函数可以说对中国的PHP界作出了重大贡献。包括康盛自己的产品,以及大部分中国使用PHP的公司都用这个函数进行加密,authcode 是使用异或运算进行加密和解密。..._php config('auth_code')

c#利用word控件将pdf转为word_c# pdf转word-程序员宅基地

文章浏览阅读466次,点赞10次,收藏8次。c#利用word控件将pdf转为word文档_c# pdf转word

国产化系统中遇到的视频花屏、卡顿以及延迟问题的记录与总结_国产化服务器 存在问题-程序员宅基地

文章浏览阅读3.1w次,点赞135次,收藏145次。国产化系统中遇到的视频花屏、卡顿以及延迟问题的记录与总结。_国产化服务器 存在问题