在转发到 JSP 之前附加您的类实例作为请求属性,然后在视图中使用它。另外,请确保不要在 getter 中做业务工作(如果您声称要返回一个对象)。
总而言之,类代码可能如下所示:
类 BeanManager{
private JSONObject jsonObject;
private String jsonObjectString;
public BeanManager() {
jsonObject=new JSONObject();
jsonObject.put("name","jack Daniel");
jsonObject.put("age","3");
jsonObjectString = jsonObject.toString();
}
public JSONObject getJsonObjectString() {
return jsonObjectString;
}
}
相关的 servlet 部分可能如下所示:
BeanManager bm = new BeanManager();//manipulate it the way you want
request.setAttribute("bean", bm);
request.getRequestDispatcher("/WEB-INF/view.jsp").forward(request, response);
该视图可能包含以下部分:
<script>
var json = ${bm.jsonObjectString};
</script>
这样,json 变量将在 JavaScript 上下文中可用。
如果您想处理 AJAX 请求,请查看如何使用 Servlets 和 Ajax?问题及其答案。在那里,JSON 对象从 servlet 返回,然后解析为 HTML 文档。