在JSP页面中输出JSON格式数据

JSON-taglib是一套使在JSP页面中输出JSON格式数据的标签库。

JSON-taglib主页: http://json-taglib.sourceforge.net/index.html
JAR包下载地址: http://sourceforge.net/projects/json-taglib/files/latest/download



使用方法:

1、下载json-taglib.jar,将其放到WEB-INF/lib目录

2、在jsp页面中做如下声明:

<%@ taglib prefix="json" uri="http://www.atg.com/taglibs/json" %>

3、JSON-taglib主要利用json:array,json:object和json:property来实现数据格式的转换


快速用例:

JSP如下:

Jsp代码  收藏代码
  1. <%@ taglib prefix="json" uri="http://www.atg.com/taglibs/json" %>  
  2.   
  3. <json:object>  
  4.   <json:property name="itemCount" value="${cart.itemCount}"/>  
  5.   <json:property name="subtotal" value="${cart.subtotal}"/>  
  6.   <json:array name="items" var="item" items="${cart.lineItems}">  
  7.     <json:object>  
  8.       <json:property name="title" value="${item.title}"/>  
  9.       <json:property name="description" value="${item.description}"/>  
  10.       <json:property name="imageUrl" value="${item.imageUrl"/>  
  11.       <json:property name="price" value="${item.price}"/>  
  12.       <json:property name="qty" value="${item.qty}"/>  
  13.     </json:object>  
  14.   </json:array>  
  15. </json:object>  
<%@ taglib prefix="json" uri="http://www.atg.com/taglibs/json" %>

<json:object>
  <json:property name="itemCount" value="${cart.itemCount}"/>
  <json:property name="subtotal" value="${cart.subtotal}"/>
  <json:array name="items" var="item" items="${cart.lineItems}">
    <json:object>
      <json:property name="title" value="${item.title}"/>
      <json:property name="description" value="${item.description}"/>
      <json:property name="imageUrl" value="${item.imageUrl"/>
      <json:property name="price" value="${item.price}"/>
      <json:property name="qty" value="${item.qty}"/>
    </json:object>
  </json:array>
</json:object>
 

 

产生JSON如下:

Json代码  收藏代码
  1. {  
  2.   itemCount: 2,  
  3.   subtotal: "$15.50",  
  4.   items:[  
  5.     {  
  6.       title: "The Big Book of Foo",  
  7.       description: "Bestselling book of Foo by A.N. Other",  
  8.       imageUrl: "/images/books/12345.gif",  
  9.       price: "$10.00",  
  10.       qty: 1  
  11.     },  
  12.     {  
  13.       title: "Javascript Pocket Reference",  
  14.       description: "Handy pocket-sized reference for the Javascript language",  
  15.       imageUrl: "/images/books/56789.gif",  
  16.       price: "$5.50",  
  17.       qty: 1  
  18.     }  
  19.   ]  
  20. }  
{
  itemCount: 2,
  subtotal: "$15.50",
  items:[
    {
      title: "The Big Book of Foo",
      description: "Bestselling book of Foo by A.N. Other",
      imageUrl: "/images/books/12345.gif",
      price: "$10.00",
      qty: 1
    },
    {
      title: "Javascript Pocket Reference",
      description: "Handy pocket-sized reference for the Javascript language",
      imageUrl: "/images/books/56789.gif",
      price: "$5.50",
      qty: 1
    }
  ]
}
posted @ 2016-08-06 10:50  吃饭了吗  阅读(955)  评论(0编辑  收藏  举报