(1) 创建查询页面
选中页面流中“查询页面”,鼠标右键,在弹出菜单中选择“生成jsp页面”,系统将在“EOSTrippingcom.primeton.relationmgr展现页面资”路径下自动创建“relationmgr_view0.jsp”。并在构件编辑视图中自动打开。
(2) 生成QueryForm代码
系统会默认在jsp页面中生成一个form,可以根据需要在这个基础上更改,在这里删掉整个form,其余部分保留。根据案例需求,要对员工姓名和性别进行查询,跟第三章的查询案例一样,对于查询条件的设置仍然借用QueryForm控件。
打开jsp页面编辑器上的选用板,在【组合控件】下面,鼠标左键点击【QueryForm】不松开,拖拽到页面上需要写代码的位置,松开鼠标,弹出“QueryForm向导”,在向导中选择查询实体EmpQueryEntity,设置查询参数和表单信息,如图4-26所示。点击【完成】,系统在jsp页面中生成对应的代码。
(3) 修改QueryForm代码
在生成的jsp代码中,查询条件的信息存放在criteria对象中,在图4-26中“查询实体名称”设置;分页信息默认存放在page对象中,在上一步页面流开发中已经将这两个对象设置成了页面流级别的变量,只要页面提交的参数名称跟页面流级别变量名称匹配,则页面数据就会直接赋给页面流级别的变量,不用再在页面视图或者Action连线上设置输出参数。
对于分页信息page,EOS6为了提供性能,当查询一次后,如果结果的记录数不为0,以后的查询都不会再去查询记录的总条数。可以通过设置page的count属性为-1,实现每次查询都重新查一遍记录的总条数。可以在代码中增加:
另外,在页面上显示页面流级别的变量需要在EOS 标签中设置scope属性为“flow”或者“f”,表示从页面流上下文中获取数据。scope缺省情况为“request”,表示从请求上下文中获取数据。修改的代码如下: