论坛首页 Java企业应用论坛

ibatis+spring+webwork中分页查询在页面中如何实现?

浏览 17145 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2005-10-02  
在action中我通过ibatis的分页查询得到一个 PaginatedList类型的,我在jsp页面中应该如何利用它?我如果要跳转到前一页,应该如何实现?
   发表时间:2005-10-02  
我的做法是先用一个Action获得PaginatedList,然后将其放入Session。
再写一个通用的分页Action,从Session拿到PaginatedList,然后根据jsp传过来的next还是previous来调用nextPage()或previousPage()来分页。
jsp还传一个url参数,表示当前页面,这样在xwork中可以用<result name="input" type="dispatcher">${url}</result>来跳转翻页,以提供重用性。
jsp上面就用iterator标签来进行显示,然后用isPreviousPageAvailable()和isNextPageAvailable()来判断有没有前后页。

但个人觉得用PaginatedList的话,三个层都被lock到iBATIS这个特殊类上了,感觉有点bad smell。

不知道大家有没有更好的解决方案 
0 请登录后投票
   发表时间:2005-10-02  
我在实现分页查询的action中得到一个PaginatedList类型的 materialPaginatedList,我把它传到jsp页面中去并赋给一个隐藏的<input>:<input type="hidden" name="materialPaginatedList"
value="<ww:property value="materialPaginatedList"/>">,然后通过表单提交到另一个action中,不知道为什么在另一个action中没有得到materialPaginatedList的值,是不是不能将它转换成PaginatedList类型啊?我觉得如果Session可以的话,它也应该可以。
0 请登录后投票
   发表时间:2005-10-02  
<input type="hidden" name="materialPaginatedList"
value="<ww:property value="materialPaginatedList"/>">
这个值是String吧,也就是materialPaginatedList的内存地址吧,而不是PaginatedList,Session存放的可是Object哦
0 请登录后投票
   发表时间:2005-10-02  
有点明白了,那我应该如何得到Session啊?
0 请登录后投票
   发表时间:2005-10-02  
Action里面是这么获得 Map session = ActionContext.getContext().getSession();
jsp里面是<ww:iterator value="#session.materialPaginatedList">
0 请登录后投票
   发表时间:2005-10-03  
谢谢,我已经实现了。
0 请登录后投票
   发表时间:2005-10-09  
为什么要放到session中呢?
不要随便把什么都放到session中,但现实中很多人都这么做.webwork的VS不好么?
session中应只放入跟踪用户的信息!
0 请登录后投票
   发表时间:2005-10-09  
vs是什么冬冬啊?给整点资料吧!上楼的兄弟是山东人啊,咱们还是老乡呢?我是济宁人。对webwork很熟吗,给指点一下吧!
0 请登录后投票
   发表时间:2005-10-09  
dazuiba 写道
为什么要放到session中呢?
不要随便把什么都放到session中,但现实中很多人都这么做.webwork的VS不好么?
session中应只放入跟踪用户的信息!


那你能不能给我做个示范呢?
情况是这样的,每个action初始化的时候会建立一个vs,第一个action查询第一页数据,用jsp显示,然后第二个action调用PaginateList的previousPage或nextPage方法,这时的vs是第二个action的,里面没有PaginateList,问题就是怎么把第一个action的vs中PaginateList放到第二个action的vs中,中间还要显示jsp,显然用chain是不行的。麻烦这位给我点拨一下,如何实现你说的方案。不胜感激
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics