//1.设置编码request.setCharacterEncoding("utf-8");//2.获取参数Map map = request.getParameterMap();//3.封装对象User user = new User();try {BeanUtils.populate(user,map);} catch (IllegalAccessException e) {e.printStackTrace();} catch (InvocationTargetException e) {e.printStackTrace();}//4.调用Service保存UserService service = new UserServiceImpl();service.addUser(user);//5.跳转到userListServletresponse.sendRedirect(request.getContextPath()+"/userListServlet");
5.删除功能
5.1 知识概述
通过id删除数据,编写sql语句。
5.2 分析图
5.3 代码实现
//1.获取idString id = request.getParameter("id");//2.调用service删除UserService service = new UserServiceImpl();service.deleteUser(id);//3.跳转到查询所有Servletresponse.sendRedirect(request.getContextPath()+"/userListServlet");
6.修改功能
6.1 知识概述
首先要进行数据回显,然后提交修改后数据到后台,进行保存。
6.2 分析图
6.3 代码实现1_用户信息回显
//1.获取idString id = request.getParameter("id");//2.调用Service查询UserService service = new UserServiceImpl();User user = service.findUserById(id);//3.将user存入requestrequest.setAttribute("user",user);//4.转发到update.jsprequest.getRequestDispatcher("/update.jsp").forward(request,response);
6.4 代码实现2_用户修改
//1.设置编码request.setCharacterEncoding("utf-8");//2.获取mapMap map = request.getParameterMap();//3.封装对象User user = new User();try {BeanUtils.populate(user,map);} catch (IllegalAccessException e) {e.printStackTrace();} catch (InvocationTargetException e) {e.printStackTrace();}//4.调用Service修改UserService service = new UserServiceImpl();service.updateUser(user);//5.跳转到查询所有Servletresponse.sendRedirect(request.getContextPath()+"/userListServlet");
7.删除选中功能
7.1 知识概述
首先要获取选中条目的id,然后根据id进行删除。
7.2 分析图
7.3 代码实现_获取选中条目id
//给删除选中按钮添加单击事件document.getElementById("delSelected").onclick = function(){if(confirm("您确定要删除选中条目吗?")){var flag = false;//判断是否有选中条目var cbs = document.getElementsByName("uid");for (var i = 0; i < cbs.length; i++) {if(cbs[i].checked){//有一个条目选中了flag = true;break;}}if(flag){//有条目被选中//表单提交document.getElementById("form").submit();}}
7.4 代码实现_删除选中服务器代码编写
//1.获取所有idString[] ids = request.getParameterValues("uid");//2.调用service删除UserService service = new UserServiceImpl();service.delSelectedUser(ids);//3.跳转查询所有Servletresponse.sendRedirect(request.getContextPath()+"/userListServlet");
//获取条件查询参数Map condition = request.getParameterMap();//2.调用service查询UserService service = new UserServiceImpl();PageBean pb = service.findUserByPage(currentPage,rows,condition);//1.定义模板初始化sqlString sql = "select count(*) from user where 1 = 1 ";StringBuilder sb = new StringBuilder(sql);//2.遍历mapSet keySet = condition.keySet();//定义参数的集合List
9.4 代码实现2_每页数据条件查询
String sql = "select * from user where 1 = 1 ";StringBuilder sb = new StringBuilder(sql);//2.遍历mapSet keySet = condition.keySet();//定义参数的集合List params = new ArrayList();for (String key : keySet) {//排除分页条件参数if("currentPage".equals(key) || "rows".equals(key)){continue;}//获取valueString value = condition.get(key)[0];//判断value是否有值if(value != null && !"".equals(value)){//有值sb.append(" and "+key+" like ? ");params.add("%"+value+"%");//?条件的值}}//添加分页查询sb.append(" limit ?,? ");//添加分页查询参数值params.add(start);params.add(rows);sql = sb.toString();System.out.println(sql);System.out.println(params);return template.query(sql,new BeanPropertyRowMapper(User.class),params.toArray());