使用 Google Web Toolkit 和 JSON开发Ajax应用程序
http://tech.ddvip.com 2007年08月25日 社区交流
内容摘要:本文介绍如何使用 Google Web Toolkit(GWT) 和 JSON 开发一个示例 Ajax 应用程序。作者将分别介绍如何在客户端使用 GWT 的 JSON API 来解析和生成 JSON 编码的数据,以及如何在服务器端使用 GWT 的 RemoteServiceServlet 来接受和回复来自客户端的请求,并使用 SOJO 来解析处理 JSON 数据。
已经有文章介绍了 JSON 数据到 JSON Java 类的解析转换。在通常开发中,在系统中通常使用各种 JavaBean 来代表系统中的业务对象,如本示例程序中的 JavaBean TestResult 和 RequestForm。如果直接采用以前使用的方法,则需要多做 JSON Java 类和 JavaBean 相互转换的一步。SOJO 则可以解决这个问题,实现 JSON 数据和 JavaBean 的直接转换。
服务器端的业务类如清单13,14。
清单 13. RequestForm 类public class RequestForm {
private int caseNum =0;
private String[] testSuites = null;
//getter and setter
…
}清单 14. TestResult 类
public class TestResult {
private String name;
private String start;
private String end;
private String result;
//getter and setter
…
}SOJO 作为一个轻量级的数据转换工具,支持 JavaBean 和各种编码的数据格式,如 JSON,进行相互转换。使用 SOJO 的 net.sf.sojo.interchange.json.JsonSerializer 可以轻松的序列/反序列化 JSON 数据和 JavaBean。
从 JSON 数据到 JavaBean。如 清单 15,指定请求信息所映射的 JavaBean,反序列化请求信息字符串。SOJO 将会自动把 JSON 格式数据转换为指定类的 JavaBean。
清单 15. 反序列化 JSON 格式字符串RequestForm requestForm = (RequestForm) serializer.deserialize(
payLoad, RequestForm.class);从 JavaBean 到 JSON 数据:
清单 16. 序列化 JavaBean,生成 JSON 格式字符串List results = testRunner.getTestResults();
String result = (String)serializer.serialize(results.toArray());其它 JavaBean 和 JSON 数据转换工具:json-lib。同样支持 JavaBean 和 JSON数据之间的解析转换。在这里就不详细介绍了。相对 SOJO 来说,它还支持从 Map 到 JSON 格式的转换,这种方式也非常的方便。
来源:ibm 作者:邹林志 责编:豆豆技术应用
正在加载评论...