2017-08-25 83 views
-1

我正在编写一个使用java和spring mvc框架的web应用程序。 (我想指定一些点数,然后谷歌地图将其绘制在地图上)。如何将对象列表表示为一个json对象数组

在我的java控制器中,我建立了对象列表,然后通过ModelAndView将它返回给我的客户端代码。

<h1>List of Geo-Location points: </h1> 

    <c:forEach items="${mapcontent}" var="point"> 
    ${point.latitude} ${point.longitude} ${point.message} 
    <br /> 
    </c:forEach> 

我对结果很满意,因为它打印出我所有的相关结果:

在我看来,我然后按如下方式访问这个列表。 这样的:

33.9249 18.4241 This is a message 
    34.9249 18.4241 This is another a message 
    35.9249 18.4241 This is a quick message 

移动到我目前的困难,我需要给这个输入数据,按以下格式:

var markers = [ 
    { 
     coordinates:{lat:-33.9811688, lng:18.644}, 
     message: 'Task completed at Stellenbosch Station' 
    }, 
    { 
     coordinates:{lat:-33.9811688, lng:19.644}, 
     message: 'Please report for duty' 
    } 
    ] 

我的问题,因此是如何从对象送的名单去从服务器到Java脚本中的一组json对象。

// taglib solution that I am currently trying: 
    Using taglib: 
    <%@ taglib prefix="json" uri="http://www.atg.com/taglibs/json" %> 
    <h1>List of Geo-Location points: </h1> 

    <c:forEach items="${mapcontent}" var="point"> 
    <!-- ${point.name} ${point.telephoneNumber} ${point.genericDateTime} --> 

    <json:object> 
     <json:array name="coordinates" var="coordinate" items="${point.coordinates}"> 
     <json:object> 
      <json:property name="latitude" value="${item.latitude}"/> 
      <json:property name="longitude" value="${item.longitude}"/> 
     </json:object> 
     </json:array> 
    </json:object> 
    <json:property name="message" value="${point.genericDateTime}"/> 


    </c:forEach> 

Danke!

+0

你需要一个JSON解析器,如杰克逊。顺便说一句,你应该告诉我们你的_list_ objects_看起来像什么。 –

+0

我已更新对象列表 – Harriet

回答

0
+0

Hi @Alex - 我已经看过链接页面上提供的json-taglib示例。我已经提出了一些代码(请参阅原始发布问题),但我不知道如何从那里继续。什么是包含json结构的对象,我可以用它初始化我的标记吗? – Harriet

+0

如果我没有弄错,的结果将是一个json格式的简单字符串 –

+0

我是否正确地将代码块放入现有的forEach循环中?这是必要的。 – Harriet

相关问题