美文网首页
[DEBUG] springboot: map数据在js和jav

[DEBUG] springboot: map数据在js和jav

作者: 陆书生 | 来源:发表于2020-05-27 17:29 被阅读0次

    更多技术文章请访问我的博客园账户:点击这里

    那边会更新有关生物信息学java Web统计学理论和一些杂七杂八的记录:)

    leetcode刷题记录争取日更(github):点击这里

    部分敏感信息已打码。不提供完整代码,欢迎评论、交流。


    问题描述:

    js从前端页面接收数据,如果数据类型不同,则相关联的子数据的类型、长度、值等都不同。考虑在js中用map接收,再转为json string,然后在后台解码成Map。

    解决方案:

    js:

    var mapData = {}; // 初始化

    mapData["startTime"] = date1; // 添加数据

    mapData["endTime"] = date2;

    var passData = new FormData();

    passData.append("passData", JSON.stringify(mapData)); // 变成json string

    // 然后就可以用$.ajax提交到后台了

    后台接收(java):

    public 返回值 listSearchResult(@RequestParam("passData")String rawData) {}

    打印出来是这样的字符串:

    {"startTime":"2020-05-01 00:00:00","endTime":"2020-05-06 00:00:00"}

    可以直接转为map:

    Map<String, String> dataMap = (Map<String, String>)JSONUtils.parse(rawData);


    补充知识:

    对于js中的map类型,

    // 获取key的个数

    Object.keys(mapData).length

    // 遍历map

    for (item in mapData) {

        console.log(mapData[item])

    }

    // 删除,不加括号也可以

    delete(mapData[key])

    相关文章

      网友评论

          本文标题:[DEBUG] springboot: map数据在js和jav

          本文链接:https://www.haomeiwen.com/subject/xjqgahtx.html