该帖已经被评为精华帖
|
|
---|---|
作者 | 正文 |
发表时间:2007-01-03
fins:
新年好! 我尝试了你的更新版本,自己依据情况做了数据库分页面操作,但是我发现有个奇怪的问题出现: 我数据库里面是12条记录。 默认每页显示10条的情况下,不能正常翻页到第二页 默认每页显示11条的情况下,能正常翻页了,但是第二页缺少一条,通过界面我选择显示20条,也仅仅给我显示11条记录。 而且排序不管以多少行显示,都没有按照数据库排序。 不知问题出自那里。 我查看了下我的代码,区别在于我没有按照rowStart和rowEnd方式取数据的那样设置取数据的,以下是我ACTION代码 Context context = new HttpServletRequestContext(request); LimitFactory limitFactory = new TableLimitFactory(context); Limit limit = new TableLimit(limitFactory); int beginPage=limit.getPage(); int pageSize=limit.getCurrentRowsDisplayed(); if(beginPage<=0){ beginPage=0; } if(pageSize<=0){ pageSize=11; } String query ="from Apply"; QueryListObj queryListObj = applyFacade.getQueryListForEcside(query, limit.getSort(), limit.getFilterSet(), beginPage, pageSize); //取到总数 int totalRows = queryListObj.getCount(); limit.setRowAttributes(totalRows, pageSize); //取到集合 Collection applys = queryListObj.getElemList(); request.setAttribute("applys", applys); request.setAttribute("totalRows", new Integer(totalRows)); // 记录操作日志־ saveLog("applyer", "查询申请列表"); return mapping.findForward("listForEcside"); |
|
返回顶楼 | |
发表时间:2007-01-03
提供一个反馈。
工具条翻页组件里面有中文字符,在UTF-8环境下会乱码,建议把中文字符提出放在外部文件中。 汗了。。不少代码都是是GBK... 苦了我这个用UTF-8的。。我已经开始改进I18N的相关代码了。。。 |
|
返回顶楼 | |
发表时间:2007-01-03
boin 写道 提供一个反馈。
谢谢 已经更正,但未上传!!!
工具条翻页组件里面有中文字符,在UTF-8环境下会乱码,建议把中文字符提出放在外部文件中。 汗了。。ECSideFilter 也是GBK... 苦了我这个用UTF-8的。。我已经开始改进I18N的相关代码了。。。 顺便又修改了两个小bug 明天一起更新 再次感谢!!! |
|
返回顶楼 | |
发表时间:2007-01-03
楼主,你太强了。我要赞美你!!!
提个问题,我在demo1.jsp中加入filterable="true" 想用这种方式来filter,例如 ‘%王%’,但好像还不支持这种模糊条件. |
|
返回顶楼 | |
发表时间:2007-01-03
我刚才又查找了下原因,发现是取不到当前显示的页面数据条数
也就是int pageSize=limit.getCurrentRowsDisplayed();取到的总是0 取到当前页面的数据显示条数不是这个方法吗? |
|
返回顶楼 | |
发表时间:2007-01-03
to hql_lims:
我不知道 applyFacade.getQueryListForEcside()你具体是怎么写的 能否提供一下代码? 还有 关于排序 建议你看一下面的参数设置 table.sortRowsCallback.default=org.extremecomponents.table.callback.ProcessRowsCallback table.sortRowsCallback.limit=org.extremecomponents.table.callback.LimitCallback 因为 排序 过滤 分页 都有属于自己的callback类 不是分页设置了limit其他的就会自动也是limit的 你应该自己设置一下 然后还要在action里自己再写些东西才行 我们不使用排序 和过滤 所以对这两个部分我没有修改 你可以看一下官方的wiki(有中文的) |
|
返回顶楼 | |
发表时间:2007-01-03
另外,我改了这样一行代码
president.put("term", "178917973443563563436432"); 导出在xls文件中显示为1.78917973443564E+23,能有什么办法解决这个问题使它在xls中原样显示吗? 谢谢你,新年快乐,为你的劳动喝彩。 |
|
返回顶楼 | |
发表时间:2007-01-03
hql_lims 写道 我刚才又查找了下原因,发现是取不到当前显示的页面数据条数
也就是int pageSize=limit.getCurrentRowsDisplayed();取到的总是0 取到当前页面的数据显示条数不是这个方法吗? 你页面内设置 rowDisplayed="11" 了吗? |
|
返回顶楼 | |
发表时间:2007-01-03
boin 写道 提供一个反馈。
工具条翻页组件里面有中文字符,在UTF-8环境下会乱码,建议把中文字符提出放在外部文件中。 汗了。。不少代码都是是GBK... 苦了我这个用UTF-8的。。我已经开始改进I18N的相关代码了。。。 关于过滤器: 那个过滤器的编码是可以设置的 在 web.xml里设置 只是如果不设置那么默认就是gbk 其他还有哪些地方是? 发现的话麻烦告诉我一下 我好改 当初写的时候确实比较懒 毕竟项目要用 挺急的 结果... 见笑了 大家多包含 |
|
返回顶楼 | |
发表时间:2007-01-03
sybase 写道 另外,我改了这样一行代码
president.put("term", "178917973443563563436432"); 导出在xls文件中显示为1.78917973443564E+23,能有什么办法解决这个问题使它在xls中原样显示吗? 谢谢你,新年快乐,为你的劳动喝彩。 呵呵 不客气 先说第一个 关于模糊过滤的 ectabel原版在设计的时候 并没有打算把过滤做成一个功能强劲的检索 所以不支持模糊或者条件查询 如果想支持模糊查询也是可以的 但是速度会很慢 第2个 你给相应的column加上 escapeAutoFormat="true" 看看 |
|
返回顶楼 | |