2015-06-08 146 views
0

我是JSON的新手,即时尝试显示从jsp使用JSON从DataBase中获取的值,我能够将java对象转换为JSON对象,但它无法显示jsp中的值。在这种情况下,任何人都可以帮助我吗?JSON对象的Java对象

代码:

  <form name="viewform"> 

       <% 
         List<ResourceMap> transList =(ArrayList)request.getAttribute("transaction"); 

       GsonBuilder builder = new GsonBuilder(); 
       builder.serializeNulls(); 
       Gson gson = builder.create(); 
       %> 



       <script> 
         var app = angular.module("myApp", []); 
         app.controller('myController', function($scope) { 
           $scope.jTranslist = gson.toJson(transList); 
         }); 
       </script> 

      </form> 

transList是Java对象(数组列表),并试图转换成JSON。

问题是数据没有显示在jsp上。究竟是什么问题?

+0

看起来你试图在你的客户端JavaScript中使用gson。多数民众赞成在不工作 – bhspencer

回答

1

问题是,您正试图将(服务器端)Java对象公开给(客户端)Javascript代码。

为了成功地做到这一点,您需要一些将JSON写入页面的方法。相反的:

$scope.jTranslist = gson.toJson(transList); 

尝试使用:

$scope.jTranslist = <%= gson.toJson(transList); %>; 

不过,我还不能肯定这甚至是你应该做的事情。 AJAX会是一种更好的方法来为你加载JSON到页面中吗?另外,将原始列表展示给页面并通过scriptlet或标记库迭代它会不会更容易?

+1

谢谢,它的工作,我使用最后告诉你的方法在jsp上显示,我只是阅读JSON,所以尽管这样实现,以便我可以利用JSON。不管怎么说,还是要谢谢你 。 – kartik