上次通过一个简单的例子介绍了JSPX Web框架的基本使用,这次让我们来看看JSPX Web框架提供的特殊标签--DataTable.
JSPX提供DataTable是一个集查询、分页、显示等为一身的标签,使用起来非常简单,但也有它不足的地方,好了,废话少话,先来看代码:
其中datasource表示数据源,需要在相应的应用服务器配置,以下是在Tomcat 6.0中配置Datasource的代码:
table属性:是你需要查询的数据库表名;
sql属性:查询的SQL语句;
showrowindex属性:表示需要显示序号;
<dataparam>元素用来定义传入sql语句的参数,name属性用于指定传入SQL的变量名称,此处为MYID,而control指定变量从哪个属性取值,此例中为userId,表明是从userId中取得值,并赋值给MYID,expression为定义的表达式.
<datapk>元素定义主键,name为要作为主键的属性,sequence为Oralce中table所对应的sequence的名称。
<datacolumn>元素用于定义显示的数据列,其中text属性表示显示的列名称,fieldname表示从哪个属性中取值,type表示该列的数据类型,required表示该列是必须的。
<datacolumnCommand>元素表示定义列操作,JSPX默认提供了几个列操作,如select表示选择该条记录,并会返回该条记录的PK;check类型会显示为checkbox,并可对所有记录进行选择;edit类型表示对记录进行修改,JSPX对自动提供对记录的更新操作;remove类型表示删除记录;
<footer>用于指定页脚内容。
我在测试时使用的是MySQL数据库,在运行此页面时有Exception抛出,通过查看源代码以及与JSPX的作者联系,确认目前JSPX只支持Oracle数据库,因此,如果你使用的是Oracle的话,JSPX将不会有任何的错误,除此之外,你需要修改JSPX的DAO类的源代码并编译打包后使用。
关于这个Bug,JSPX的作者Amr告知将在JSPX的下一版本1.0.3中修复,大家期待吧,呵呵,不过此外还有一个关于生成PK的Bug不知会不会解决:)