很长一段时间里,我学习编程很少总结代码。后来代码总结也只是写在一个电脑里的文件夹,觉得与互联网脱轨了,哈哈哈,所以现在也准备写一写博客,记录自己,提高水平。
这是我的第一篇,也是关于SSM框架下使用PageHelper。
这里不具体写我做的项目课题的全部内容,主要专注于PageHelper部分
首先在pom.xml(parking_dao模块下)引入PageHelper依赖
复制代码
1
2
4 xsi:schemaLocation=“http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd”>
5
6 parking
7 com.dong
8 1.0-SNAPSHOT
9
10 4.0.0
11
12 parking_dao
13
14
15 mysql
16 mysql-connector-java
17 5.1.47
18
19
20 org.mybatis
21 mybatis
22 3.4.6
23
24
25
26 org.springframework
27 spring-core
28 s p r i n g . v e r s i o n < / v e r s i o n > 29 < / d e p e n d e n c y > 30 < d e p e n d e n c y > 31 < g r o u p I d > o r g . s p r i n g f r a m e w o r k < / g r o u p I d > 32 < a r t i f a c t I d > s p r i n g − c o n t e x t < / a r t i f a c t I d > 33 < v e r s i o n > {spring.version}</version> 29 </dependency> 30 <dependency> 31 <groupId>org.springframework</groupId> 32 <artifactId>spring-context</artifactId> 33 <version> spring.version</version>29</dependency>30<dependency>31<groupId>org.springframework</groupId>32<artifactId>spring−context</artifactId>33<version>{spring.version}
34
35
36 org.springframework
37 spring-beans
38 s p r i n g . v e r s i o n < / v e r s i o n > 39 < / d e p e n d e n c y > 40 < d e p e n d e n c y > 41 < g r o u p I d > o r g . m y b a t i s < / g r o u p I d > 42 < a r t i f a c t I d > m y b a t i s − s p r i n g < / a r t i f a c t I d > 43 < v e r s i o n > 1.3.1 < / v e r s i o n > 44 < / d e p e n d e n c y > 45 < d e p e n d e n c y > 46 < g r o u p I d > o r g . s p r i n g f r a m e w o r k < / g r o u p I d > 47 < a r t i f a c t I d > s p r i n g − j d b c < / a r t i f a c t I d > 48 < v e r s i o n > {spring.version}</version> 39 </dependency> 40 <dependency> 41 <groupId>org.mybatis</groupId> 42 <artifactId>mybatis-spring</artifactId> 43 <version>1.3.1</version> 44 </dependency> 45 <dependency> 46 <groupId>org.springframework</groupId> 47 <artifactId>spring-jdbc</artifactId> 48 <version> spring.version</version>39</dependency>40<dependency>41<groupId>org.mybatis</groupId>42<artifactId>mybatis−spring</artifactId>43<version>1.3.1</version>44</dependency>45<dependency>46<groupId>org.springframework</groupId>47<artifactId>spring−jdbc</artifactId>48<version>{spring.version}
49
50
51 com.github.pagehelper
52 pagehelper
53 5.1.2
54
55
56
57
复制代码
最主要的是:
com.github.pagehelper pagehelper 5.1.2 随后需要在spring配置(spring-dao)文件里配置PageHelper复制代码
1
3 xmlns:context=“http://www.springframework.org/schema/context”
4 xsi:schemaLocation=“http://www.springframework.org/schema/beans
5 http://www.springframework.org/schema/beans/spring-beans.xsd
6 http://www.springframework.org/schema/context
7 http://www.springframework.org/schema/context/spring-context.xsd”>
8
9
10
11
12
13
15
16
17
18
19
20
21
22
23
24
25
26
27
28 offsetAsPageNum=true
29 rowBoundsWithCount=true
30 pageSizeZero=true
31 reasonable=true
32
33
34
35
36
37
38
39
40
41
42
复制代码
最主要的为:
复制代码
1
2
3
4
5
6
7
8
9
10 offsetAsPageNum=true
11 rowBoundsWithCount=true
12 pageSizeZero=true
13 reasonable=true
14
15
16
17
18
19
复制代码
Ok,关于配置已经好了,现在进入parking,结构如下,以红框标识的为例
ParkSpaceController代码如下
View Code
我们关注一下list方法
复制代码
1 @RequestMapping(value = “/list”)
2 public String list(Map
3 @RequestParam(defaultValue = “1”, required = true, value = “pageNo”) Integer pageNo) {
4 List list = null;
5 Integer pageSize = 2;
6 PageHelper.startPage(pageNo, pageSize);
7 if (status == null)
8 list = parkSpaceBiz.findAll();
9 else
10 list = parkSpaceBiz.findByStatus(status);
11
12
13 PageInfo pageInfo = new PageInfo(list);
14 map.put(“pageInfo”, pageInfo);
15 return “park_space_list”;
16 }
复制代码
这里的形参pageNo为前台传来的值。这里的步骤可归结如下
步骤1:PageHelper.startPage(pageNo,pageSize),设置每页显示的个数和页数
步骤2:List list = beanService.find(),获得bean的结合(这里以Bean代表一般的实体类)
步骤3:PageInfo pageInfo = new PageInfo(list); 将list集合封装到pageInfo对象。
步骤4:map.put(“pageInfo”,pageInfo);将pageInfo对象回给前台
好了,现在咱们来到前台页面,park_space_list.jsp代码如下
复制代码
1 <%@ taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core” %>
2 <%@ page contentType=“text/html;charset=UTF-8” language=“java” %>
3
4
5
6
楼层 | 区域 | 车位号 | 状态 | 操作 |
---|---|---|---|---|
s p a c e . a r e a < / t d > 67 < t d > {space.area}</td> 67 <td> space.area</td>67<td>{space.spaceId} | 69 71 76 删除 77 |
当前 p a g e I n f o . p a g e N u m 页 , 总 {pageInfo.pageNum }页,总 pageInfo.pageNum页,总{pageInfo.pages }
83 页,总 p a g e I n f o . t o t a l 条 记 录 84 < / p > 85 < a h r e f = " l i s t ? p a g e N o = {pageInfo.total } 条记录 84 </p> 85 <a href="list?pageNo= pageInfo.total条记录84</p>85<ahref="list?pageNo={pageInfo.getFirstPage()}">首页
86
88
89
90
92
93
94 末页
95
复制代码
1
楼层 | 区域 | 车位号 | 状态 | 操作 |
---|---|---|---|---|
s p a c e . a r e a < / t d > 25 < t d > {space.area}</td> 25 <td> space.area</td>25<td>{space.spaceId} | 27 29 34 删除 35 |
当前 p a g e I n f o . p a g e N u m 页 , 总 {pageInfo.pageNum }页,总 pageInfo.pageNum页,总{pageInfo.pages }
41 页,总 p a g e I n f o . t o t a l 条 记 录 42 < / p > 43 < a h r e f = " l i s t ? p a g e N o = {pageInfo.total } 条记录 42 </p> 43 <a href="list?pageNo= pageInfo.total条记录42</p>43<ahref="list?pageNo={pageInfo.getFirstPage()}">首页
44
46
47
48
50
51
52 末页
53