起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1687|回复: 5

[结贴] 求教X5怎么应用Hibernate数据库分页

[复制链接]

81

主题

300

帖子

559

积分

高级会员

Rank: 4

积分
559
QQ
发表于 2014-10-20 10:18:55 | 显示全部楼层 |阅读模式
版本: X5.2.6 小版本号:
数据库: Oracle 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
手头只有一段代码,求教大神指点如何应用,或者给出完整的代码或说明,求大神们不吝赐教
public void pageList(String sql, Class cl, List paramList, PageBean pb) {
                getDataCount(sql, paramList, pb);

                StringBuffer pgSql = new StringBuffer();

                pgSql.append("select * from (select pt.*, rownum pagern from (");
                pgSql.append(sql);
                pgSql.append(") pt where rownum <=");
                pgSql.append(pb.getPageSize() * (pb.getCurrentPage()));
                pgSql.append(") paget where pagern >=");
                pgSql.append(pb.getPageSize() * (pb.getCurrentPage() - 1) + 1);

                Session session = getHibernateTemplate().getSessionFactory().getCurrentSession();
                SQLQuery query = session.createSQLQuery(pgSql.toString());
                setParam(paramList, query);
                query.setResultTransformer(new EscColumnToBean(cl));
                List<Object> list = query.list();

                pb.setObjList(list);
        }

        /**
         * ?????
         * @param sql
         * @param pb
         */
        @SuppressWarnings("unchecked")
        private void getDataCount(String sql, List paramList, PageBean pb) {
                StringBuffer pgSql = new StringBuffer();
                pgSql.append("select count(1) as total from (");
                pgSql.append(sql);
                pgSql.append(") pagebeant");

                Session session = getHibernateTemplate().getSessionFactory()
                                .getCurrentSession();
                SQLQuery query = session.createSQLQuery(pgSql.toString());
                setParam(paramList, query);
                List<Object> list = query.list();
                pb.setRowcnt(new Integer(list.get(0).toString()).intValue());
        }


91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2014-10-20 11:03:35 | 显示全部楼层
如果是要自定义的action做分页,可以重写queryAction,参考http://www.justep.com/x5knowledg ... 3C53B82C3FE5DE.html
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

81

主题

300

帖子

559

积分

高级会员

Rank: 4

积分
559
QQ
 楼主| 发表于 2014-10-20 15:35:57 | 显示全部楼层
jishuang 发表于 2014-10-20 11:03
如果是要自定义的action做分页,可以重写queryAction,参考http://www.justep.com/x5knowledge/knowledge_2 ...

请问有没有类似,与分页有关的文档或者代码供以参考学习的?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2014-10-20 16:10:29 | 显示全部楼层
demo/actions/process/standardActionExtend/mainActivity.w
http://bbs.justep.com/thread-54836-1-1.html
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

81

主题

300

帖子

559

积分

高级会员

Rank: 4

积分
559
QQ
 楼主| 发表于 2014-10-20 17:19:14 | 显示全部楼层
jishuang 发表于 2014-10-20 16:10
demo/actions/process/standardActionExtend/mainActivity.w
http://bbs.justep.com/thread-54836-1-1.html ...

对了,你们平台自带的分页,是跟数据库层面的吗
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35942
发表于 2014-10-20 17:28:31 | 显示全部楼层
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-18 07:57 , Processed in 0.120097 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表