WEB开发网
开发学院软件开发Java 使用 Grails 构建富 Internet 应用程序,第 2 部分... 阅读

使用 Grails 构建富 Internet 应用程序,第 2 部分: Grails 和 Google Web Toolkit

 2009-11-19 00:00:00 来源:WEB开发网   
核心提示: 注意,这个清单仅是该类的一部分;省略了一些 helper、getter 和 setter 函数,使用 Grails 构建富 Internet 应用程序,第 2 部分: Grails 和 Google Web Toolkit(6),搜索方法接受参数 tag 和 category,以及一个 Requ

注意,这个清单仅是该类的一部分;省略了一些 helper、getter 和 setter 函数。搜索方法接受参数 tag 和 category,以及一个 RequestCallback。它然后使用 GWT RequestBuilder 类创建一个 HTTP 请求并发送到 Web 服务。RequestCallback 是 GWT 中的一个接口,用于发送异步 HTTP 请求。Story.search 方法委托传入到其内部的 RequestCallback。因此,在这里它将执行在 清单 5 中创建的 RequestCallback。注意,不管是清单 5 还是 清单 6,我们都创建了一个用于实现 RequestCallback 接口的匿名内部类。这是 GWT(和一般的 Java UI 编程)中常用的技巧,因为它使您可以访问包含的类中的字段和方法。我们再回过头看看 清单 5,可以看到使用 Story.fromJson 方法获取响应文本,然后将其解析成 Story 对象的列表。如清单 7 所示。


清单 7. Story.fromJson 方法
public static List<Story> fromJson(String jsonText){ 
  JSONValue val = JSONParser.parse(jsonText); 
  JSONArray array = val.isArray(); 
  List<Story> stories = new ArrayList<Story>(array.size()); 
  for (int i=0;i<array.size();i++){ 
    Story story = new Story(array.get(i).isObject()); 
    stories.add(story); 
  } 
  return stories; 
} 

这个方法使用了 GWT 的 JSONParser 类。它创建一个 JSON 对象数组,并将每个对象传递到 Story 类的构造器中(如 清单 6 所示)。回过头来看看 清单 5,可以看到,获得新闻对象列表之后,您就会使用它创建一个 SearchTable 对象。这是一个定制的小部件,如清单 8 所示。

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:使用 Grails 构建

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接