在jsp中读取json对象

时间:2009-05-05 05:51:59

标签: javascript json jsp object parsing

我有一个传递给jsp页面的JSON对象。它以字符串形式传递。现在我必须解析此字符串并检索通过JSON对象传递的值。这样我就可以在同一个jsp中打印这些值。

3 个答案:

答案 0 :(得分:1)

有很多资源,包括图书馆和json.org上各种技术/框架的插件。

答案 1 :(得分:1)

有大量的JSON解析器,它归结为您希望如何处理JSON中的数据。我个人最喜欢的是Jackson,但许多其他人也很适合简单的案例,包括“参考实施”(又名JSON.org parser)。

(我假设你想要一个Java解析器,给出对jsp的引用)

答案 2 :(得分:0)

我对此问题的首选解决方案涉及使用JSON解析器,该解析器提供实现java.util.Map和java.util.List接口的输出。这允许在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}