在本教程中,我们将向我们介绍如何通过数据库中的数据动态地构建树结构。我们将使用NetBeans IDE 6.0构建一个由两个页面组成的应用程序,其中第一页包含一个JSF 1.2(Woodstock)树组件。接下来,我们将用数据库中的人物姓名填充树结构的一级节点,然后用此人的行程信息来填充二级节点。TRIP节点将链接到第二个页面,其中显示该行程的详细信息。
目录
-
设计主页
-
连接数据库
-
通过数据库表构建树结构
-
添加详细信息页
-
添加代码
-
定义页面导航
-
更多功能:将Action方法与树节点绑定
-
关于树节点选择的注意事项
本教程将涉及以下技术和资源
JavaServer Faces组件/
Java EE平台
1.2 with Java EE 5*
1.1 with J2EE 1.4
Travel数据库
必需
要利用NetBeans IDE 6.0的Java EE 5的性能,我们需要一个与Java EE 5规范完全兼容的应用服务器,比如说Sun Java System Application Server 9(GlassFish项目)。
本教程适用于GlassFish V2应用服务器。如果我们使用的是其他服务器,请参阅 发行说明 和 常见问题解答 了解各类问题和解决途径。有关所支持的服务器和Java EE平台的详细信息,请参阅 发行说明。
设计主页
首先,我们将构建一个包含树组件和TRIP数据库表的主页。
创建一个新的Visual Web JSF应用程序项目,将其命名为DatabaseTree,然后启动Viual Web JSF框架。 从组件面板的Basic部分拖动一个树组件到页面上,键入“Travel信息”,然后按回车键。在“属性”窗口中,将id属性设置为displayTree,将clientSide属性设置为True。
当clientSide属性为True时,每个子节点(无论展开与否)都将发送给客户机,但它们只有在父节点展开时才可见。当clientSide为False时,仅呈现那些展开的父节点的子节点。
选择Tree Node 1,单击鼠标右键,然后从弹出菜单中选择“删除”。
在本应用程序中,我们将通过编程填充树中的节点,因此不需要初始化由IDE创建的树节点。如果未移除该节点,则JSP标记属性中设置的值将优先于运行时设置,并且页面将显示节点。
从组件面板拖动一个“消息组”组件到页面的边缘位置,如页面的右上角。
连接数据库
接下来,将该页与Travel数据源中的数据库表相连接,然后使用查询编辑器修改用于检索数据的SQL查询,使游客的姓名按字母顺序显示,旅行日期按时间顺序显示。
打开“服务”窗口,展开数据库节点,然后验证是否已连接到Travel数据库。
如果Travel数据库的jdbc节点标记显示为断开,并且无法展开该节点,则表明IDE未连接到该数据库。要连接Travel数据库,请右键单击Travel数据库的jdbc节点,然后从弹出菜单中选择“连接”。如果出现“连接”对话框,在输入travel作为口令,选中“在此期间记住密码”,然后单击“确定”按钮。
注:如果我们使用的是Apache Tomcat应用服务器,请将derbyClient.jar文件复制到
/common/lib目录,然后再尝试连接到该数据库。
展开Travel数据库的jdbc节点,然后展开“表”节点
将“TRIP”节点拖放到可视编辑器中。
导航窗口净土 在页面1部分显示“tripDataProvider”节点,在“SessionBean1”部分显示“tripRowSet”节点。
在导航窗口中,展开“SessionBean1”节点,右键单击“tripRowSet”节点,然后选择“编辑SQL语句”。
在编辑区域将显示带有TRIP表格图的查询编辑器。
从“服务”窗口拖出“行程 > 表 > 人员”节点,并将其放置在查询编辑器中的“TRIP”表图的旁边,如图3所示。
此时将出现另一个表图,且两个表图之间有链接或连接。
在“PERSON”表中,取消选中PERSONID复选框。 在查询编辑器的“设计网格”中,找到“TRAVEL.PERSON”表中的“NAME”行。 单击“排序类型”单元格,然后从下拉列表中选择“升序”。
此操作将使数据库表中的名字按姓氏的字母顺序排列。
找到“TRAVEL.TRIP”表中的“DEPDATE”行。单击“排序类型”单元格,然后从下拉列表中选择“升序”。
此操作将行程日期按照从早到晚的顺序排列。
本文来自于博客,更详细信息,请点击查看原文。