gpt4 book ai didi

java - 将 JSON 字符串转换为 JSON 对象以获取值

转载 作者:行者123 更新时间:2023-11-30 06:01:57 25 4
gpt4 key购买 nike

我正在获取一个 JSON 字符串,并希望通过 JSP 在控制台上打印名称值。有人可以建议如何做吗?

String AllCustomLockingCriterias = '{"TemplateArray":[{"Id":16,"Name":"Machine","type":"PM"},
{"Id":17,"Name":"Ethernet","type":"PM"},
{"Id":18,"Name":"Hard Disk","type":"PM"}]}';

我需要的输出:

Machine
Ethernet
Hard Disc

我想开始一个循环,我的输出将是:

Machine
Ethernet
Hard Disc

最佳答案

  1. 使用Gson jar包(google.com出品)、FastJson(alibaba.com出品)或jackson对json字符串和Class对象进行序列化或反序列化。一个jar包就够了。
  2. 使用maven pom dependency/gradle config将gson添加到您的项目中或直接将gson jar添加到您的lib文件夹中,这一切都由您决定,首选maven。
  3. 使用 json 字符串中的元信息定义 Java 类字段成员,例如“id”、“name”、“type”。Java 类可以命名为“Template”(不要忘记实现 java可序列化接口(interface))。
  4. 代码示例:
Gson gson = new Gson();
TypeToken typeToken = new TypeToken<List<Template>>() {};
Type type = typeToken.getType();
List<Template> templates = gson.fromJson(json, type);
  • 将模板列表返回到jsp页面范围内的前端jsp页面。如果您使用springMVC框架,您可以在方法参数中添加模型参数,
  • @RequestMapping(value = "/test",method = RequestMethod.GET)
    public String test(Model model){
    model.addAttribute("templates",templates);
    return "jspFileName";
    }
  • 对于jsp站点,可以使用jsp EL Express来显示列表
  • <c:forEach items="${templates}" var = "template">  
    ${template.name}
    </c:forEach>
  • 最后也是最简单的方法是,可以将json字符串传递到jsp页面。换句话说,不需要将json字符串序列化到类,只需将字符串带有model属性的字符串传递到jsp即可由springMVC甚至是基本的Servlet提供。然后使用javascript方法来处理json字符串。例如,
  • var obj = JSON.parse(json);
    var array = obj.TemplateArray;
    array.foreach(function(item) {
    console.log(item.name);
    });

    关于java - 将 JSON 字符串转换为 JSON 对象以获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52072157/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com