【发布时间】:2016-11-24 17:43:35
【问题描述】:
List userList = Arrays.asList(
new User[] {
new User("FirstA", "LastA"),
new User("FirstB", "LastB"),
new User("FirstC", "LastC")
});
add(new ListView("listview", userList) {
protected void populateItem(ListItem item) {
User user = (User) item.getModelObject();
item.add(new Label("firstname", user.getFirstname()));
item.add(new Label("lastname", user.getLastname()));
}
});
上述代码从 List userList 中添加值,并在 Table 中显示 Firstname 和 LastName。
我需要将 JSONObject 传递给 ListView。
Json 架构 -
{"schema":[{"name":"John","id":"01"},{"name":"Sam","id":"02"}]}
Json 是从数据库传递过来的 -
JSONObject json=widget.getJsonForTableContent(query); //QUERY from Database
json.toString();
System.out.println(json); //Prints json - {"schema":[{"name":"John","id":"01"},{"name":"Sam","id":"02"}]}
Iterator<String> iter=json.keys();
while(iter.hasNext())
{
String key = iter.next();
System.out.println(key); //prints only "schema" from json in console
}
键值仅在控制台中打印“模式”。 如何解析和迭代 json 以打印“name”和“id”并将这些值传递给 ListView 以显示在 wicket Table 中
我只是一个初学者。任何帮助将不胜感激。谢谢
【问题讨论】:
-
假设您正在寻找最有效的方法,建议使用标准 JSON 解析器 API,如下面的回答所示。如果目标是学习如何解析复杂的表达式,那么问题/答案需要采用不同的框架。
标签: java json listview iterator wicket