Skip to content

Commit 9679d6b

Browse files
author
pchome
committed
page分页算法未完成
1 parent 7ee4f64 commit 9679d6b

12 files changed

Lines changed: 169 additions & 22 deletions

File tree

Case_ServletCRUD/Case_ServletCRUD.iml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,5 +40,6 @@
4040
<SOURCES />
4141
</library>
4242
</orderEntry>
43+
<orderEntry type="library" name="Tomcat 8.5.11" level="application_server_libraries" />
4344
</component>
4445
</module>

Case_ServletCRUD/src/com/crud/dao/PersonDaoImpl.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,15 +59,17 @@ public List<Person> getListForPage() {
5959
sql.append(" FROM tb_person");
6060
sql.append(" where 1=1 ");
6161

62+
StringBuilder countSql=new StringBuilder(" SELECT count(*) from tb_person where 1=1 ");
6263

6364
if(query.getName()!=null&&!"".equals(query))
6465
{
6566
sql.append("AND name = ? ");
67+
countSql.append(" AND name = ?");
6668
par.add(query.getName());
6769
}
6870
List<Person> query1 = template.query(sql.toString(), new BeanPropertyRowMapper<Person>(Person.class), par.toArray());
6971
result.setList(query1);
70-
Integer integer = template.queryForObject("select count(*) from tb_person", Integer.class);
72+
Integer integer = template.queryForObject(countSql.toString(), Integer.class,par.toArray());
7173
result.setCout(integer);
7274
return result;
7375
}

Case_ServletCRUD/src/com/crud/dao/QueryResult.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
import java.util.List;
66

7-
public class QueryResult<TEntity extends BaseEntity> {
7+
public class QueryResult<TEntity> {
88

99
private List<TEntity> list;
1010

Case_ServletCRUD/src/com/crud/domian/BaseQuery.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,24 @@
22

33
public class BaseQuery<TEntity extends BaseEntity> {
44

5+
public Integer getSkip() {
6+
return skip;
7+
}
8+
9+
public void setSkip(Integer skip) {
10+
this.skip = skip;
11+
}
12+
13+
public Integer getTake() {
14+
return take;
15+
}
16+
17+
public void setTake(Integer take) {
18+
this.take = take;
19+
}
20+
21+
private Integer skip;
22+
private Integer take;
523

624
public Class getaClass() {
725
return aClass;

Case_ServletCRUD/src/com/crud/domian/PageBean.java

Lines changed: 52 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,62 @@
11
package com.crud.domian;
22

3-
import java.util.ArrayList;
3+
import com.crud.dao.QueryResult;
44

5-
public class PageBean<TEntiry extends ArrayList<BaseEntity>,TQuery extends BaseQuery> {
5+
import java.util.List;
6+
7+
public class PageBean<TEntity> {
68
private int totalPage;
9+
10+
public boolean isHasNexPage() {
11+
return hasNexPage;
12+
}
13+
14+
public boolean isHasPrePage() {
15+
return hasPrePage;
16+
}
17+
18+
public void setQuery(BaseQuery query) {
19+
this.query = query;
20+
}
21+
22+
public void setResult(QueryResult<TEntity> result) {
23+
this.result = result;
24+
}
25+
26+
public PageBean(List<TEntity> result, int totalCount, Integer skip, Integer take){
27+
28+
29+
}
30+
31+
732
private boolean hasNexPage;
8-
private boolean hasPrePage;
9-
private int curruentPage;
33+
private boolean hasPrePage;
34+
private int currentPage;
1035
private int nexPage;
1136
private int perPage;
37+
private int totalCount;
38+
private BaseQuery query;
39+
private QueryResult<TEntity> result;
1240

13-
public BaseQuery getQuery() {
14-
return query;
41+
public QueryResult<TEntity> getResult() {
42+
return result;
1543
}
1644

17-
public void setQuery(BaseQuery query) {
45+
46+
47+
public PageBean(QueryResult<TEntity> result, BaseQuery query) {
48+
this(result.getList(),result.getCout(),query.getTake(),query.getSkip());
1849
this.query = query;
50+
this.result=result;
51+
1952
}
2053

21-
private BaseQuery query;
54+
public BaseQuery getQuery() {
55+
return query;
56+
}
57+
58+
59+
2260

2361
public int getTotalPage() {
2462
return totalPage;
@@ -29,8 +67,7 @@ public void setTotalPage(int totalPage) {
2967
}
3068

3169
public boolean hasNexPage() {
32-
if(this.curruentPage==totalPage)
33-
{
70+
if (this.currentPage == totalPage) {
3471
return false;
3572
}
3673
return true;
@@ -48,12 +85,12 @@ public void setHasPrePage(boolean hasPrePage) {
4885
this.hasPrePage = hasPrePage;
4986
}
5087

51-
public int getCurruentPage() {
52-
return curruentPage;
88+
public int getCurrentPage() {
89+
return currentPage;
5390
}
5491

55-
public void setCurruentPage(int curruentPage) {
56-
this.curruentPage = curruentPage;
92+
public void setCurrentPage(int currentPage) {
93+
this.currentPage = currentPage;
5794
}
5895

5996
public int getNexPage() {
@@ -80,6 +117,6 @@ public void setTotalCount(int totalCount) {
80117
this.totalCount = totalCount;
81118
}
82119

83-
private int totalCount;
120+
84121

85122
}

Case_ServletCRUD/src/com/crud/domian/Person.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ public class Person extends BaseEntity{
77
private int age;
88
private String address;
99
private String qq;
10-
10+
private String email;
1111
public String getName() {
1212
return name;
1313
}
@@ -56,5 +56,5 @@ public void setEmail(String email) {
5656
this.email = email;
5757
}
5858

59-
private String email;
59+
6060
}

Case_ServletCRUD/src/com/crud/service/PersonService.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package com.crud.service;
22

3+
import com.crud.dao.QueryResult;
34
import com.crud.domian.Person;
5+
import com.crud.domian.PersonQuery;
46

57
import java.util.List;
68

@@ -16,6 +18,8 @@ public interface PersonService {
1618

1719
List<Person> getListForPage();
1820

21+
QueryResult<Person> queryResult(PersonQuery query);
22+
1923

2024

2125
}

Case_ServletCRUD/src/com/crud/service/PersonServiceImpl.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22

33
import com.crud.dao.PersonDao;
44
import com.crud.dao.PersonDaoImpl;
5+
import com.crud.dao.QueryResult;
56
import com.crud.domian.Person;
7+
import com.crud.domian.PersonQuery;
68

79
import java.util.List;
810

@@ -34,4 +36,9 @@ public void add(Person p) {
3436
public List<Person> getListForPage() {
3537
return null;
3638
}
39+
40+
@Override
41+
public QueryResult<Person> queryResult(PersonQuery query) {
42+
return dao.queryResult(query);
43+
}
3744
}

Case_ServletCRUD/src/com/crud/web/IndexServlet.java

Lines changed: 25 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,49 @@
11
package com.crud.web;
22

3+
import com.crud.dao.QueryResult;
4+
import com.crud.domian.PageBean;
35
import com.crud.domian.Person;
6+
import com.crud.domian.PersonQuery;
47
import com.crud.service.PersonService;
58
import com.crud.service.PersonServiceImpl;
9+
import org.apache.commons.beanutils.BeanUtils;
610

711
import javax.servlet.ServletException;
812
import javax.servlet.annotation.WebServlet;
913
import javax.servlet.http.HttpServlet;
1014
import javax.servlet.http.HttpServletRequest;
1115
import javax.servlet.http.HttpServletResponse;
1216
import java.io.IOException;
17+
import java.lang.reflect.InvocationTargetException;
1318
import java.util.List;
19+
import java.util.Map;
1420

1521

1622
@WebServlet( "/indexServlet")
1723
public class IndexServlet extends HttpServlet {
1824

1925
private PersonService personService=new PersonServiceImpl();
2026
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
21-
List<Person> list = personService.getList();
22-
request.setAttribute("person",list);
23-
request.getRequestDispatcher("/list.jsp").forward(request,response);
27+
/*List<Person> list = personService.getList();
28+
request.setAttribute("person",list);*//**//*
29+
request.getRequestDispatcher("/list.jsp").forward(request,response);*/
30+
31+
PersonQuery query=new PersonQuery();
32+
33+
Map<String, String[]> parameterMap = request.getParameterMap();
2434

35+
try {
36+
BeanUtils.populate(query, parameterMap);
37+
} catch (IllegalAccessException e) {
38+
e.printStackTrace();
39+
} catch (InvocationTargetException e) {
40+
e.printStackTrace();
41+
}
42+
43+
QueryResult<Person> personQueryResult = personService.queryResult(query);
44+
//PageBean<Person>personPageBean=new PageBean<>();
45+
request.setAttribute("person",personQueryResult.getList());
46+
request.getRequestDispatcher("/list.jsp").forward(request,response);
2547
}
2648

2749
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

Case_ServletCRUD/web/list.jsp

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,64 @@
3030
td, th {
3131
text-align: center;
3232
}
33+
.row-grid {
34+
margin-bottom: 10px;
35+
}
3336
</style>
3437
</head>
3538
<body>
3639
<div class="container">
40+
<div class="panel panel-default">
41+
<div class="panel-body">
42+
<div class="row row-grid">
43+
<div class="col-md-4">
44+
<div class="input-group">
45+
<span class="input-group-addon title">代理商手机号</span>
46+
<input type="text" class="form-control" name="Mobile" value=""/>
47+
</div>
48+
</div>
49+
<div class="col-md-4">
50+
<div class="input-group">
51+
<span class="input-group-addon title">代理商手机号</span>
52+
<input type="text" class="form-control" name="Mobile" value=""/>
53+
</div>
54+
</div>
55+
<div class="col-md-4">
56+
<div class="input-group">
57+
<span class="input-group-addon title">代理商手机号</span>
58+
<input type="text" class="form-control" name="Mobile" value=""/>
59+
</div>
60+
</div>
61+
</div>
62+
<div class="row row-grid">
63+
<div class="col-md-4">
64+
<div class="input-group">
65+
<span class="input-group-addon title">代理商手机号</span>
66+
<input type="text" class="form-control" name="Mobile" value=""/>
67+
</div>
68+
</div>
69+
<div class="col-md-4">
70+
<div class="input-group">
71+
<span class="input-group-addon title">代理商手机号</span>
72+
<input type="text" class="form-control" name="Mobile" value=""/>
73+
</div>
74+
</div>
75+
<div class="col-md-4">
76+
<div class="input-group">
77+
<span class="input-group-addon title">代理商手机号</span>
78+
<input type="text" class="form-control" name="Mobile" value=""/>
79+
</div>
80+
</div>
81+
</div>
82+
<div class="row row-grid">
83+
<div class="col-md-4">
84+
85+
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#AddAgent" onclick="">搜索</button>
86+
</div>
87+
</div>
88+
</div>
89+
90+
</div>
3791

3892
<table border="1" class="table table-bordered table-hover">
3993
<tr class="success">

0 commit comments

Comments
 (0)