2009-05-05 102 views
1

我有一个传递给jsp页面的JSON对象。它作为一个字符串传递。现在我必须分析这个字符串并检索通过JSON对象传递的值。这样我就可以在相同的jsp中打印这些值。在jsp中读取json对象

回答

1

有很多资源,其中包括各种技术/框架的插件json.org

1

随着大量的JSON解析器,它归结为你想如何处理JSON数据。我个人最喜欢的地方是Jackson,但其他许多人也适用于简单的情况,包括“参考实现”(又名JSON.org parser)。

(我假设你想要一个Java解析器,给出参考JSP)

0

我首选的解决了这个问题涉及使用JSON解析器,提供了实现了java.util.Map和java.util输出。列表界面。这允许在JSP表达式语言中简单地解析JSON结构。

以下是使用Apache Wink提供的JSON4J的示例。该示例从URL中导入JSON数据,并在java scriptlet中解析并浏览生成的结构。

<c:import var="dataJson" url="http://localhost/request.json"/> 
<% 
String json = (String)pageContext.getAttribute("dataJson"); 
pageContext.setAttribute("parsedJSON", org.apache.commons.json.JSON.parse(json)); 
%> 
Fetch the name of the node at index 1 : ${parsedJSON.node[1].name} 

为了使这个干净,最好将创建一个JSTL标签做解析和避免的Java scriplet。

<c:import var="dataJson" url="http://localhost/request.json"/> 
<json:parse json="${dataJson}" var="parsedJSON" /> 
Fetch the name of the node at index 1 : ${parsedJSON.node[1].name}