V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xiaolong620
V2EX  ›  Java

Java 返回一个 ArrayList 类型 json 报错

  •  
  •   xiaolong620 · 2019-06-09 10:36:40 +08:00 · 3397 次点击
    这是一个创建于 1995 天前的主题,其中的信息可能已经有所发展或是发生改变。

    @RequestMapping("/getZtreeNodes") @ResponseBody public List<map> getZtreeNodes(String roleid){ //查询所有模块 List<module> modules = moduleService.findAll(); //查询已勾选模块 List<module> checkModules=moduleService.findByRoleId(roleid); System.out.println(checkModules); //返回数据用的 list List<map> list=new ArrayList<>(); //循环插入 list 返回数据 for (Module module : modules) { Map map=new HashMap(); map.put("id",module.getId()); map.put("pId",module.getParentId()); map.put("name",module.getName()); if(checkModules.contains(module)){ map.put("checked","true"); } list.add(map); } return list;</map></module></module></map>

    }
    依赖什么的都有报错是什么原因
    不写 list.add(map);  页面没问题  写了就 500
    
    第 1 条附言  ·  2019-06-09 11:33:33 +08:00
    已经解决了,谢谢大家
    27 条回复    2019-06-09 11:33:01 +08:00
    luckylo
        1
    luckylo  
       2019-06-09 10:39:42 +08:00 via Android
    首先建议学习下 markdown 怎么插入代码片段美观点,然后就是把报错信息丢截图出来
    itning
        2
    itning  
       2019-06-09 10:40:52 +08:00 via Android
    代码格式化
    xiaolong620
        3
    xiaolong620  
    OP
       2019-06-09 10:45:36 +08:00
    xiaolong620
        4
    xiaolong620  
    OP
       2019-06-09 10:48:17 +08:00
    alamaya
        5
    alamaya  
       2019-06-09 10:49:22 +08:00
    你这个 map 是啥?自定义的?泛型也没有
    xiaolong620
        6
    xiaolong620  
    OP
       2019-06-09 10:53:17 +08:00
    @alamaya 嗯 刚学不是很懂,不写泛型应该也是可以的把
    xiaolong620
        7
    xiaolong620  
    OP
       2019-06-09 11:00:15 +08:00
    luckyqiang
        8
    luckyqiang  
       2019-06-09 11:01:24 +08:00 via iPhone
    报啥错啊
    xiaolong620
        9
    xiaolong620  
    OP
       2019-06-09 11:02:47 +08:00
    @luckylo 上边发了图了 不知道是不是这么发,不会发图片手动尴尬
    qinxi
        10
    qinxi  
       2019-06-09 11:03:03 +08:00
    先是报错你只会说 500,连个 log 都不发.
    再是代码没有格式化.
    发个截图点开居然弹出要下载.
    建议你用 IDE.这么明显的错误编译也应该出错 List<Map> ≠ List<map>
    xiaolong620
        11
    xiaolong620  
    OP
       2019-06-09 11:03:10 +08:00
    @luckyqiang 上边发了图了 不知道是不是这么发,不会发图片手动尴尬
    manr
        12
    manr  
       2019-06-09 11:04:41 +08:00
    springMVC?配置文件加 annotation-driven 了吗
    hfc
        13
    hfc  
       2019-06-09 11:06:35 +08:00
    应该是说,没法从 List<Map>转换成需要的 JSON 类型,List 的结构和 JSON 还是有区别的
    xiaolong620
        14
    xiaolong620  
    OP
       2019-06-09 11:07:09 +08:00
    @manr 加了 只要不写 那个 list.add(map); 就不会报错,不知道为啥。。。
    xiaolong620
        15
    xiaolong620  
    OP
       2019-06-09 11:07:54 +08:00
    @hfc 我导了 jackson 包也不能用吗?
    easylee
        16
    easylee  
       2019-06-09 11:08:09 +08:00
    @xiaolong620 #11

    提醒一下:站内帖子正文支持 md 语法,回复是不支持 md 语法的。

    发帖前最好先点击“预览”。

    但是想在回复发图片的话,直接贴图片直链就好,大部分图床的链接都会自动展示预览图片。

    这个问题十楼已经指出了。
    xiaolong620
        17
    xiaolong620  
    OP
       2019-06-09 11:09:29 +08:00
    @easylee 好的,谢谢
    hfc
        18
    hfc  
       2019-06-09 11:17:15 +08:00
    manr
        19
    manr  
       2019-06-09 11:17:18 +08:00
    @xiaolong620 list 不 add 没内容不会转换,log 是转换 json 的问题缺转换器,检查你用的什么 json 转换,注解驱动做没做配置
    hfc
        20
    hfc  
       2019-06-09 11:19:10 +08:00
    @qinxi 如果是编译问题,那么项目都起不来,更不会有 http 500 了
    qinxi
        21
    qinxi  
       2019-06-09 11:22:20 +08:00
    @hfc #20 有道理.然而.这个 List<map> 确实有问题.
    xiaolong620
        22
    xiaolong620  
    OP
       2019-06-09 11:25:10 +08:00
    @hfc 可以了,我注解支持那自己手敲得,字母写错了,刚才看你的粘贴复制好了,花了我好长时间啊。。。
    xiaolong620
        23
    xiaolong620  
    OP
       2019-06-09 11:26:16 +08:00
    此贴终结,提醒大家一下,写东西的时候能补全就补全吧,别自己手写,自己手写还看不出问题,蛋疼!!!
    hfc
        24
    hfc  
       2019-06-09 11:26:55 +08:00
    @qinxi 哦哦,你是看的上面那个没格式化的代码吧?居然和他截图里不一样,醉了😂
    xiaolong620
        25
    xiaolong620  
    OP
       2019-06-09 11:28:32 +08:00
    @qinxi @hfc 我也纳闷呢 那个代码我是直接复制的,复制到这里自己就变小写的 map 了。。。
    aragakiyuii
        26
    aragakiyuii  
       2019-06-09 11:30:05 +08:00 via Android
    配置里加一个 json 的消息解析器,jackson 的就可以
    xiaolong620
        27
    xiaolong620  
    OP
       2019-06-09 11:33:01 +08:00
    @aragakiyuii 嗯 已经解决了,谢谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2729 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 11:27 · PVG 19:27 · LAX 03:27 · JFK 06:27
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.