先吐槽一下 刚刚复制了一段代码网页直接崩溃,楼主辛苦的描述得重写
最近按照视频教学做了一个简单的struts2 hibernate小练习
用户注册 查看所有用户 删、改单个用户 也就是增删改查了
我想在查询出来的结果上加个分页功能,试了几个小时,一直失败,求大神指点
原来的com.xxx.model只有一个Person 几个属性
我按照书上jsp+hibernate分页的例子 加了个PageModel
private int currPage;
private int totalRecords;
private List<Person> list;
private int pageSize;
把以前返回的list放在这个里面 想返回pageModel对象 然后再获得里面的list 从而达到和以前一样的jsp页面效果,但中间代码写的应该问题很大,新手求大神帮帮忙-----
之前的PersonAction (自认为不重要的部分省略,这里我只列出了一个方法(增,)里面包含了查,)
private int id;
private String username;
private String password;
private int age;
public String savePerson()throws Exception{
Person person =new Person();
person.setUsername(username);
person.setPassword(password);
person.setAge(age);
java.sql.Date registerDate=new java.sql.Date(new java.util.Date().getTime());
person.setRegisterDate(registerDate);
//把页面的值放到person里面
PersonService personService=new PersonServiceImpl();
personService.savePerson(person);
//通过PersonService借口实例化一个对象把person对象的值存入数据库
List<Person> list=personService.listAllPersons();//把值放入list中
HttpServletRequest request=ServletActionContext.getRequest();
request.setAttribute("list", list);//把list的值传到request中
return SUCCESS;
}
我自己乱改后的代码
Person person = new Person();
person.setUsername(username);
person.setPassword(password);
person.setAge(age);
java.sql.Date registerDate = new java.sql.Date(
new java.util.Date().getTime());
person.setRegisterDate(registerDate);
// 把页面的值放到person里面
PersonService personService = new PersonServiceImpl();
personService.savePerson(person);
// 通过PersonService借口实例化一个对象把person对象的值存入数据库
HttpServletRequest request = ServletActionContext.getRequest();
String page = request.getParameter("currPage");
int currPage = 1;
int pageSize = 5;
if (page != null) {
currPage = Integer.parseInt(page);
}
PageModel pageModel = personService.findPaging(currPage, pageSize);
request.setAttribute("pageModel", pageModel);// 把list的值传到request中
return SUCCESS;
jsp页面原来的代码
<table width="80%" align="center" border="1">
<tr>
<th>username</th>
<th>password</th>
<th>age</th>
<th>registerDate</th>
<th>update</th>
<th>delete</th>
</tr>
<!-- #request.list是ognl写法 ,获取request里面的”list”-->
<s:iterator value="#request.list" id="person"> <!-- 当前迭代的person对象 -->
<tr>
<!-- 自动通过get set方法获得值 -->
<td>
<!-- 取出当前person对象的id ognl表达式写法-->
<s:a href="getSinglePerson.action?id=%{#person.id}"> <s:property value="username"/></s:a>
</td>
<td>
<s:property value="password"/>
</td>
<td>
<s:property value="age"/>
</td>
<td>
<s:property value="registerDate"/>