【问题标题】:How to parse JSON array in JSP and form a String如何在JSP中解析JSON数组并形成一个字符串
【发布时间】:2018-05-07 10:59:06
【问题描述】:

我有一个JSON 字符串数组,它只是从服务器收到的响应。现在我想遍历数组对象并形成一个字符串,并对整个字符串执行字符串操作。比如我有以下JSON对象

      "data": {
          "details": [
            "Toyota",
            "Mazda",
            "Hyundai"
          ]
        }

我知道我可以使用 ForEach 将其简单地打印为 HTML 元素,如下所示,

<c:forEach items="${details}" var="item" varStatus="status">
    <c:if test="${!status.last}
      <span>${item}, </span>
    </c:if>
    <c:if test="${status.last}">
      <span>and ${item}</span>
    </c:if>
</c:forEach>

但在这里我不想以这种方式,而是想形成一个完整的字符串,如Toyota Mazda Hyundai,然后像here那样形成JSP标准标签库,然后将该字符串作为参数传递给i18n键,如下面,

sn-p 来自i18n 常用属性,

car.makers=Car makers {0}

sn-p 来自我的jsp

<c:set var="carmakers"><fmt:message key="car.makers"><fmt:param>${thefullstring}</fmt:param></fmt:message></c:set> 

完整的字符串是我试图从JSON 数组中生成的字符串。 如何从JSON 数组中形成一个字符串。

【问题讨论】:

    标签: jsp jsp-tags


    【解决方案1】:

    我想出了如何从 JSON 数组格式化字符串。实现如下,

      <c:set var="models" value=""/>
      <c:forEach items="${carmodels}" var="item" varStatus="status">
        <c:if test="${!status.last}">
            <c:set var="models" value="${models}${item},${' '}"/>
        </c:if>
        <c:if test="${status.last}">
          <c:choose>
            <c:when test="${not empty models}">
              <c:set var="models" value="${models}and${' '}${item}"/>
            </c:when>
            <c:otherwise>
              <c:set var="models" value="${item}"/>
            </c:otherwise>
          </c:choose>
        </c:if>
      </c:forEach>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-18
      相关资源
      最近更新 更多