基于prototype.js的ajax分页

来源:互联网 发布:软件二次开发工作 编辑:程序博客网 时间:2024/04/28 00:15

这是一个基于prototype.js的ajax分页,运用了spring框架,自定义分页标签,每次进入列表页面时,把列表存入session,分页只对session存储的列表进行分页,不需要再去查询数据库,性能会高些

 

首先在web.xml中配置spring监听和servlet

web.xml内容如下:

 

还需要在WEB-INF下建个root-dispatcher-servlet.xml的文件(没有这个文件会报错,为什么少了这个会出错就不知道了)

root-dispatcher-servlet.xml内容如下:

 

下面是spring的配置文件,文件名是application-context.xml(为了方便spring的配置都写这个文件里了),启动tomcat 的时候加载

application-context.xml 内容如下

 

下面开始写分页标签,文件名为TagTest,要继承TagSupport类

TagTest.java 内容如下

 

写好java标签后,在WEB-INF下建立个tld类型的文件配置标签,我建的标签配置文件叫tagLib

tagLib.tld 内容如下:

 

现在开始写用于显示列表的两个controller

TestController.java用于首次进入列表页面(test.jsp),分页时调用PaginationController.java,返回一个简单页面(test_1.jsp),并局部刷新test.jsp页面

TestController.java 内容如下

其中pageSize属性在spring配置文件中注入,其值应该与页面标签代码中的pageSize相同,否则分页会不正确

 

PaginationController.java内容如下

由于考虑到共用性,该controller中的List没有指明具体的类型。

 

下面建立个简单的JavaBean,用于测试

接口类Person.java

实现类PersonImpl.java

Person.java 内容如下:

 

PersonImpl.java 内容如下:

 

下面是页面代码

test.jsp

url:是Ajax要提交的controller映射 ''/ajaxPagination/test/paginationController.do"中,ajaxPagination为项目名称

location:返回页面要刷新的区域

list:用于分页的List

pageSize:每页显示的条数,该数值应与TestController.java中的pageSize数值相同

注意:在test.jap页面中不要忘记把prototype.js文件放进去 

 

test_1.jsp

 

 

原创粉丝点击