0

我实际上正在使用 Spring 3 MVC 并使用PagedListHolder从我的服务层传递方法以从 DB 表中获取所有行的分页列出数据,如下所示:

PagedListHolder myList = new PagedListHolder(myService.getAll());

这是我的控制器代码:

public class MyListController implements Controller {

    public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {

        String page = request.getParameter("page");

        MyService myService = new MyService();
        PagedListHolder myList = new PagedListHolder(myService.getAll());
        myList.setPageSize(5); 

        if ("next".equals(page)) {
            myList.nextPage();
        }
        else if ("previous".equals(page)) {
            myList.previousPage();
        }

        ModelAndView modelAndView = new ModelAndView("myList");
        modelAndView.addObject("myList", myList.getPageList());
        return modelAndView;
    }
}

所以,这是完美的,但我现在想myList通过使用关键字进行搜索,我认为通常的方式可能是在DAOService层中实现方法,例如:

...
String keyword = request.getParameter("keyword");
PagedListHolder myList = new PagedListHolder(myService.findByWord(keyword));
...

此时myList将返回数据库中与我的关键字匹配的所有行。

我想知道的是是否有一种方法可以搜索myList(使用myService.getAll();方法,也许还有其他方法PagedListHolder),并避免修改DAOService层,以免创建额外的方法,就像我在上面的示例中使用的方法一样。

提前致谢。

4

1 回答 1

0

中没有搜索方法PagedListHolder。你可以在这里查看代码。

此外,如果您使用 Maven 和 STS(或者也可能是 Eclipse),您可以通过Open Type命令检查代码。快捷方式是CtrlShiftT

于 2012-08-07T04:40:14.807 回答