在gwt json中使用复杂结构的对象

使用gwt javascript overlay types特性编写json应用中使用了简单对象,在gwt json使用集合类型中使用了集合。那么,一般来说一个名词对象(领域模型对象)是个复杂的对象,即不是简单的基本型数据键值对,也不是一个简单的集合。而是成员包括复杂对象和集合的对象。比如,表示一个分页的对象的json表示:

{
    "pageNumber":"2",
    "results":[
                { "name" : "张三"},
                { "name" : "李四"}
                 ]
}

 

那么,使用javascript overlay types特性是否可以满足这个需求呢?没有问题。

增加一个Pagination类,用于表示上面json对象:

class Pagination extends JavaScriptObject {
    protected Pagination() {
    }

    public final native String getPageNumber() /*-{
        return this.pageNumber;
    }-*/;

    public final native JsArray<Customer> getResults() /*-{
        return this.results;
    }-*/;

    public static native Pagination fromJson(String jsonString) /*-{
        return eval(‘(‘ + jsonString + ‘)’);
    }-*/;

}

 

获取json响应的代码:

dialogBox.setText("response:"
        + Pagination.fromJson(response.getText()).getResults().get(1).getName());

PDF格式打印機    发送文章为PDF   

这篇文章上的评论的 RSS feed TrackBack URI

Leave a Reply