我有一个要求,我必须从数据库中获取一些记录,然后我必须在 JSP 上每页显示 50 条记录。该页面将在屏幕上显示第一个、上一个、下一个和最后一个按钮。有没有人在 struts 或类似的框架中实现了类似的功能?我也不想一次获得所有记录。请指导我如何实施?
提前致谢
我为此使用了Displaytag库。它与 Struts 和 jsp 结合使用效果很好,并提供排序和分页。
也许您可以尝试一些处理所有客户端处理并从服务器端代码获取数据的 JQuery 插件。你可以试试http://www.datatables.net/因为它处理分页、过滤、排序并且有更多的功能。这里解释了如何将 DataTables 与 java servlet 应用程序http://www.codeproject.com/KB/java/JQuery-DataTables-Java.aspx集成。
1)在动作类中计算动作中的总页数(从数据库中获取它并像totalPages = totalEntries / pageSize一样计算)
2)从jsp发送pageNumber(当用户点击页面编号时),从jsp发送pageSize(如果用户必须指定pageSize)或从action发送到Business。String query = "select empid, ename from employee by joindate desc limit " + start + "," + pageSize;
计算 Start like int start = (pageNumber * pageSize - pageSize);
使用 Strust2 标准 API 设置最大结果
List<Class_Name> records = new ArrayList<Class_Name>();
private static SessionFactory sf = new Configuration().configure().buildSessionFactory();
Session s = sf.openSession();
Criteria cr = s.createCriteria(Class_Name.class);
cr.setMaxResults(50);
records = cr.list();
s.close();
使用Struts 2 Jq Grid 插件它是为 struts2 设计的插件 ..display tag
已贬值。您只需使用即可实现,struts2 jqgrid tags
并且还有许多其他功能