在开始之前
了解您想从本文中学到什么,以及怎样去获得这些知识。
通过教您学习更多关于 IBM® Rational® Business Developer 的组件,Enterprise Generation Language (EGL)以及 Java™Server Faces(JSF)的高级应用,本篇教程扩展了教程“Hello World: Rational Business Developer Extension —— 数据访问和 Web 应用程序:在不了解 Java 语言的情况下创建一个 Java Web 应用程序”的内容。在本教程中,您将创建两种允许用户以不同方式搜索数据库的页面。
这些页面接受用户的输入,并搜索数据库中与输入相匹配的记录,并在同一页面中显示出结果。这并不是创建一个搜索页面唯一的,或者最佳的方式,但是这种方式能够解释一些重要的 EGL 以及 JSF 概念。
本篇教程将要创建的搜索页面,不同于 Web 搜索引擎,也不同于搜索 Internet 或者单个 Web 站点的页面。范例中您将创建的搜索页面,搜索的是数据库数据,而不是 Web 页面,或者 Web 页面上的信息。
在本教程中,您将学习完成以下任务:
- 使用 SQL 语言来筛选结果得到的搜索页面
- 创建一个通用的 EGL 记录部分,并在页面中显示出来
- 应用一个带动态数据的组合框
- 对输入控件应用预输入(type-ahead) 支持
- 更新部分基于一次 Ajax 请求的页面
本篇教程大概需要 90 分钟左右来完成学习,如果您还需查阅与本文相关的其他内容,那么所花的时间将会更多。
在您开始学习本文以前,您必须已经完成教程“Hello World: Rational Business Developer Extension —— 数据访问和 Web 应用程序:在不了解 Java 语言的情况下创建一个 Java Web 应用程序”的学习。
当您完成本文的学习后,您将会创建一个搜索页面,该页面能够接受用户的输入,并与数据库中的数据相比较,然后向用户返回查询的结果。您将会创建一个同时使用两种参数的搜索(一次AND 搜索)。您还可以将那个搜索改为使用两个参数中的一种 (一次OR 搜索)。并且您将在页面上设置一个 radio 按钮组,以允许用户在两种模式中选择一个。
通过在页面上放置一个组合框,您可以限制用户对搜索参数的选择:组合框将向用户提供一组固定的选择,而不是任由他们直接输入一串字符 。最后,您还将学到,怎样加工得到的搜索结果,组合区域,以及决定怎样在页面中将输出显示出来。
第一个完成的搜索页面,外观如图 1 所示。
图1. 首先得到的搜索页面
您将创建的第二个搜索页面,会展示出 Ajax 功能与 EGL 的简单应用。Ajax 的一个普遍应用,是向用户输入提供建议,以当作 type-ahead 支持。以这种方式,页面在数据库中搜索,查找与用户在输入区输入内容相似的项目,如图 2 所示。
图 2. Ajax type-ahead 支持
一旦用户接受了建议中的一种,页面将在不重新加载的前提下,使用另一个 Ajax 请求,以向用户显示数据库信息:
图 3. 显示所接受建议的细节
