在javascript中处理java对象

我在我的JavaScript中使用Ajax,并在响应中设置以下类的对象数组:

public class RetrieveTempSecVersions { private String templateName; private int[] versionNumber; public String getTemplateName() { return templateName; } public void setTemplateName(String templateName) { this.templateName = templateName; } public int[] getVersionNumber() { return versionNumber; } public void setVersionNumber(int[] i) { this.versionNumber = i; } } 

使用:

 aoRes.setContentType("text/xml"); aoRes.setHeader("Cache-Control", "no-cache"); aoRes.getWriter().write(template[]); 

现在我想将模板数组中的所有元素及其详细信息读入我的JavaScript中。

任何人都可以帮我怎么做?

您是否考虑过使用Google Web Toolkit ? 使用GWT,您可以在客户端和服务器之间发送对象,包括GWT RPC , RequestFactory和JSON 。

您需要将Java对象数组转换为JavaScript理解的内容。 有两个明显的选择:XML(AJAX意味着异步Javascript和XML)或JSON 。 JSON可能更容易,更轻量级。

所有AJAX JavaScript库(JQuery等)都对JSON有很好的支持。 例如,请参阅http://api.jquery.com/jQuery.getJSON/ 。

还有几个Java API将Java对象转换为JSON(例如,查看GSON )。

您必须修改响应的内容类型:它不是text / html,而是如果您使用JSON则是application / json。

正如已经说过的,jQuery非常适合ajax操作。

我喜欢使用的另一个好框架是DWR: http : //directwebremoting.org/dwr/index.html

它比jQuery(因为只专注于Ajax调用而不是组件)而且非常容易理解。