ElementUI中el-upload传递额外参数为date类型时后台SpringBoot接收不到

摘要:
页面上设置这个参数时是个时间选择器那么在将此事件参数lxyf和下面的勾选框的布尔类型的两个参数通过如下方式进行传递时:data="{updateSupport:upload.updateSupport,lxyf:upload.lxyf}"在SpringBoot后台中接收的方式@RequestMapping@ResponseBodypublicAjaxResultimportDatathrowsException{}布尔类型的参数能接收到,但是Date类型的参数就接收不到。
场景

ElementUI中el-upload怎样上传文件并且传递额外参数给Springboot后台进行接收:

https://mp.csdn.net/console/editor/html/107979828

上面讲了怎样使用el-upload控件传递给后台进行接收。

可以看到el-upload传递额外的参数时使用的data格式为

:data="{updateSupport:upload.updateSupport,lxyf:upload.lxyf}"

其中upload.updateSupport是布尔类型变量,而upload.lxyf是时间选择器选择的值,是Date类型,其默认值

      //导入参数
upload: {
        //是否显示弹出层(用户导入)
        open: false,
        //弹出层标题(用户导入)
        title: "",
        //是否禁用上传
        isUploading: false,
        //是否更新已经存在的用户数据
        updateSupport: 0,
        //轮休月份
        lxyf: newDate(),
        //设置上传的请求头部
        headers: { Authorization: "Bearer " +getToken() },
        //上传的地址
        url: process.env.VUE_APP_BASE_API + "/kqgl/lxsz/importData",
      },

取得是当前日期。

页面上设置这个参数时是个时间选择器

ElementUI中el-upload传递额外参数为date类型时后台SpringBoot接收不到第1张

那么在将此事件参数lxyf和下面的勾选框的布尔类型的两个参数通过如下方式进行传递时

:data="{updateSupport:upload.updateSupport,lxyf:upload.lxyf}"

在SpringBoot后台中接收的方式

    @RequestMapping("/importData")
    @ResponseBody
    publicAjaxResult importData(@RequestParam MultipartFile file, @RequestParam boolean updateSupport,@RequestParam Date lxyf) throws Exception {

   }

布尔类型的参数能接收到,但是Date类型的参数就接收不到。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

这是因为采用上面那种

:data="{updateSupport:upload.updateSupport,lxyf:upload.lxyf}"

格式的传递时间参数,会将其格式化为String字符串格式,传递到后台时就不能再用Date去进行接收了

而应该是用String进行接收。

    @RequestMapping("/importData")
    @ResponseBody
    publicAjaxResult importData(@RequestParam MultipartFile file, @RequestParam boolean updateSupport,@RequestParam String lxyf) throws Exception {

   }

这样就能接收到了但是是字符串,如果想要Date类型的数据,

可以调用下面的字符串转Date类型的方法

Date lxyfDate = str2Date(lxyf);

方法实现

    publicDate str2Date(String dateString) {

         String FORMAT_STRING = "yyyy-MM-dd HH:mm:ss";

         String[] REPLACE_STRING = new String[]{"GMT+0800", "GMT+08:00"};

         String SPLIT_STRING = "(中国标准时间)";

        try{
            dateString = dateString.split(Pattern.quote(SPLIT_STRING))[0].replace(REPLACE_STRING[0], REPLACE_STRING[1]);
            SimpleDateFormat sf1 = new SimpleDateFormat("E MMM dd yyyy HH:mm:ss z", Locale.US);
            Date date =sf1.parse(dateString);
            returndate;
        } catch(Exception e) {
            throw new RuntimeException("时间转化格式错误" + "[dateString=" + dateString + "]" + "[FORMAT_STRING=" + FORMAT_STRING + "]");
        }
    } 

免责声明:文章转载自《ElementUI中el-upload传递额外参数为date类型时后台SpringBoot接收不到》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇OpenXml Excel数据导入导出(含图片的导入导出)C#获取Windows10屏幕的缩放比例下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

MySQL 日期与时间的处理

1.查询当前日期时间:函数有now(),localtime(),current_timestamp(),sysdate()。 mysql> select now(),localtime(),current_timestamp(),sysdate(); +---------------------+---------------------+--...

C#实现短链接生成服务

项目中有一处需求,需要把长网址缩为短网址,把结果通过短信、微信等渠道推送给客户。刚开始直接使用网上现成的开放服务,然后在某个周末突然手痒想自己动手实现一个别具特色的长网址(文本)缩短服务。 由于以前做过socket服务,对数据包的封装排列还有些印象,因此,短网址服务我第一反应是先设计数据的存储格式,我这里没有采用数据库,而是使用2个文件来实现: Url...

Kafka速览

一、基本结构 三台机器组成的Kafka集群,每台机器启动一个Kafka进程,即Broker 向broker发送消息的客户端是Producer,拉取消息的客户端是Consumer Producer和Consumer都是用户实现的 broker只负责数据存储,不保存任何Producer和Consumer的信息 Kfaka通过zookeeper管理集群 bro...

数据结构---公交线路提示系统05(内附读取表格+迪杰斯特拉算法Java代码)

今天做的最多的事情就是纠错了,通过添加输出语句判断错误来源; 找到错误来源: wb = new XSSFWorkbook(input);//语句创建错误 网上查询发现是jar包的问题; 下图为poi的jar包各个用途:(本人需要的是excel) 读取表格:...

集合(六)LinkedHashMap

上两篇文章讲了HashMap和HashMap在多线程下引发的问题,说明了,HashMap是一种非常常见、非常有用的集合,并且在多线程情况下使用不当会有线程安全问题。 大多数情况下,只要不涉及线程安全问题,Map基本都可以使用HashMap,不过HashMap有一个问题,就是迭代HashMap的顺序并不是HashMap放置的顺序,也就是无序。HashMap的...

缓存子系统如何设计

缓存子系统如何设计 大家对这段代码肯定很熟悉吧: public List<UserInfo> SearchUsers(stringuserName) { string cacheKey=string.Format("SearchUsers_{0}", userName);...