在完成了前面用户显示的Dao层和Service层,我们现在来编写用户显示的Servlet层
用户显示的Servlet
首先根据前端的代码,我们点击用户管理会传过来一个method参数,值为query,我们在这里加上对query的处理,然后编写query方法
1.获取用户前端的数据(查询)
2.获取用户列表 (调用service层)
UserServiceImpl userService=new UserServiceImpl();
3.设置每个页面展示多少条数据
//第一次走这个请求,一定是第一页,页面大小是固定的
int pageSize=5; //可以把这个写在配置文件中,方便后期修改
int currentPageNo=1;
4.判断请求是否需要执行,判断参数的值
if(queryUserName==null){
queryUserName="";
}
if(temp!=null&&!temp.equals("")){
queryUserRole=Integer.parseInt(temp);//给查询赋值0,1,2,3
}
if(pageIndex!=null){
currentPageNo = Integer.parseInt(pageIndex);
}
5.获取分页的相关参数
//获取用户的总数(分页:上一页,下一页)
int totalCount= userService.getUserCount(queryUserName, queryUserRole);
//总页数支持
PageSupport pageSupport=new PageSupport();
pageSupport.setCurrentPageNo(currentPageNo);
pageSupport.setPageSize(pageSize);
pageSupport.setTotalCount(totalCount);
int totalPageCount=pageSupport.getTotalPageCount();
6.分页业务
//控制首页和尾页
//如果页面要小于1了,就显示第一页的东西
if(currentPageNo<1){
currentPageNo=1;
}else if(currentPageNo>totalPageCount){
currentPageNo=totalPageCount;
}
7.获取用户列表展示
前面做的都是对参数的准备 我们核心要调用service层的 userService.getUserList
再从service层调用Dao层
最终查询出用户列表
//获取用户列表展示
userList = userService.getUserList(queryUserName, queryUserRole, currentPageNo, pageSize);
req.setAttribute("userList",userList);