使用Mybatis+jsp+servlet完成数据的分页+条件查询,添加,修改,删除
分页插件
package com.openlab.service.impl;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.openlab.mapper.EmployeesMapper;
import com.openlab.pojo.Employees;
import com.openlab.pojo.EmployeesExample;
import com.openlab.service.EmployeeService;
import com.openlab.utils.Const;
import com.openlab.utils.MapperFactory;
import com.openlab.utils.StringUtils;
import com.openlab.vo.EmpVo;
import java.util.Arrays;
import java.util.List;
public class EmployeeServiceImpl implements EmployeeService {
static MapperFactory factory = new MapperFactory();
@Override
public PageInfo findPageInfo(EmpVo empVo) {
EmployeesExample example = new EmployeesExample();
EmployeesExample.Criteria criteria = example.createCriteria();
if(empVo!=null){
if(StringUtils.isNull(empVo.getFirstName())){
criteria.andFirstNameLike("%"+empVo.getFirstName()+"%");
}
if(StringUtils.isNull(empVo.getLastName())){
criteria.andFirstNameLike("%"+empVo.getLastName()+"%");
}
if(StringUtils.isNull(empVo.getEmail())){
criteria.andEmailLike("%"+empVo.getEmail()+"%");
}
if(StringUtils.isNotZero(empVo.getMinSalary())){
criteria.andSalaryGreaterThanOrEqualTo(empVo.getMaxSalary().doubleValue());
}
if(StringUtils.isNotZero(empVo.getMaxSalary())){
criteria.andSalaryLessThanOrEqualTo(empVo.getMinSalary().doubleValue());
}
if(StringUtils.isNotZero(empVo.getDepartmentId())){
criteria.andDepartmentIdEqualTo(empVo.getDepartmentId());
}
}
EmployeesMapper employeesMapper = factory.getMapper(EmployeesMapper.class);
Page<Employees> page = PageHelper.startPage(empVo.getPageNo(),empVo.getPageSize());
List<Employees> list = employeesMapper.selectByExample(example);
PageInfo<Employees> pageInfo = new PageInfo<>(list, Const.PAGENUMS);
factory.close();
return pageInfo;
}
}
增删改查
package com.openlab.action;
import com.openlab.po.Books;
import com.openlab.po.Types;
import com.openlab.service.BooksService;
import com.openlab.service.TypesService;
import com.openlab.service.impl.BooksServiceImpl;
import com.openlab.service.impl.TypesServiceImpl;
import com.openlab.utils.BaseAction;
import com.openlab.utils.PageModel;
import com.openlab.vo.BookVo;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.sql.Date;
import java.util.List;
@WebServlet(urlPatterns = "/emp.do")
public class BookAction extends BaseAction {
DeptService deptService = new DeptServiceImpl();
EmployeeService booksService = new BooksServiceImpl();
public void list(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
List<Dept> list = DeptService.findAll();
int pageNo =1;
String s = req.getParameter("pageNo");
if(s!=null) {
pageNo = Integer.parseInt(s);
}
String employeeId = req.getParameter("employeeId");
String firstName = req.getParameter("firstName");
String lastName = req.getParameter("lastName");
String sex = req.getParameter("sex");
String email = req.getParameter("email");
String phoneNumber = req.getParameter("phoneNumber");
String minsalary = req.getParameter("minsalary");
String maxsalary = req.getParameter("maxsalary");
String deptid = req.getParameter("deptid");
EmpVo vo = new EmpVo(employeeId,firstName,lastName,sex,email,phoneNumber,minsalary,maxsalary,deptid);
PageInfo pageInfo = employeeService.findPageInfo(vo);
List<employee> emp = pageInfo.getList();
req.setAttribute("pageInfo",pageInfo);
req.setAttribute("emp",emp);
req.setAttribute("list",list);
req.getRequestDispatcher("emplist.jsp").forward(req,resp);
}
public void delete(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String id = req.getParameter("id");
employeeService.delete(Integer.parseInt(id));
resp.sendRedirect("emp.do?m=show");
}
public void presave(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
List<Dept> list = DeptService.findAll();
req.setAttribute("list",list);
req.getRequestDispatcher("empsave.jsp").forward(req,resp);
}
public void save(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
Employees employees = new Employees();
employees.setEmployeeId(Integer.parseInt(req.getParameter("employeeid")));
employees.setFirstName(req.getParameter("firstName"));
employees.setLastName(req.getParameter("lastName"));
employees.setSex(req.getParameter("sex"));
employees.setEmail(req.getParameter("email"));
employees.setPhoneNumber(req.getParameter("phoneNumber"));
employees.setSalary(Double.parseDouble(req.getParameter("salary")));
employees.setDeptid(Integer.parseInt(req.getParameter("deptid")));
employeeService.upadte(employees);
resp.sendRedirect("emp.do?m=list");
}
public void preupdate(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
String id = req.getParameter("id");
Employee employee = EmployeeService.findById(Integer.parseInt(id));
req.setAttribute("employees",employees);
List<Dept> list = DeptService.findAll();
req.setAttribute("list",list);
req.getRequestDispatcher("empupdate.jsp").forward(req,resp);
}
public void update(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{
Employees employees = new Employees();
employees.setEmployeeId(Integer.parseInt(req.getParameter("employeeid")));
employees.setFirstName(req.getParameter("firstName"));
employees.setLastName(req.getParameter("lastName"));
employees.setSex(req.getParameter("sex"));
employees.setEmail(req.getParameter("email"));
employees.setPhoneNumber(req.getParameter("phoneNumber"));
employees.setSalary(Double.parseDouble(req.getParameter("salary")));
employees.setDeptid(Integer.parseInt(req.getParameter("deptid")));
employeeService.upadte(employees);
resp.sendRedirect("emp.do?m=list");
}
}