我是JSON的新手,我试图在jsp中使用JSON显示从DataBase获取的值,我能够将java对象转换为JSON对象,但是它无法在jsp中显示值。在这种情况下,任何人都可以帮助我吗?
代码:
<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 :(得分:1)
问题是您正在尝试将(服务器端)Java对象公开给(客户端)Javascript代码。
为了成功完成此操作,您需要一些将JSON写入页面的方法。而不是:
$scope.jTranslist = gson.toJson(transList);
尝试使用:
$scope.jTranslist = <%= gson.toJson(transList); %>;
然而,我并不认为这甚至是你应该做的事情。 AJAX是一种更好的方法来为您加载JSON到页面?另外,将原始列表公开给页面并通过scriptlet或标记库迭代它会不会更容易?