嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元微信扫码支付:2 元
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
可以作为学习的很好的一个简单案例,界面是用了J-UI国产界面,数据库用了C3PO, 对JDBC的完整的封装(涉及到反射机制)
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
// 为了区别各个功能,如查询、增加、修改、删除,所以在每个访问这个servlet请求地址中加上一个参数来判断当
// 前是准备做什么操作,/McServlet?task=query 表示查询 /McServlet?task=add,那么表示增加
String task = request.getParameter("task");// query
//实例化业务逻辑层对象
IMcTypeService service=new McTypeServcieImpl();
if("query".equals(task)){//到查询列表页面
//到数据库取出商品类别所有的数据
List<McType> list=service.query(null);
//要把list放到作用域,以便把数据传到界面
request.setAttribute("list", list);
//请求转发,把作用域中的值传到界面
request.getRequestDispatcher("/back/mctype/mctypelist.jsp").forward(request, response);
}else if("init".equals(task)){//到增加页面
//增加页面时,先到数据库取出所有的大类信息,要显示在增加页面。在这里我先取出所有数据,到页面上再判断PID为0的就是大类
List<McType> list=service.query(null);
//要把list放到作用域,以便把数据传到界面
request.setAttribute("list", list);
request.getRequestDispatcher("/back/mctype/addmctype.jsp").forward(request, response);
}else if("add".equals(task)){//增加
//从页面上取值
String typename=request.getParameter("typename");
//父id是int类型,要先从字符串转成int类型
int pid=WebUtils.StringToInt(request, "pid", 0);
//把数据放到对象中
McType type=new McType();
type.setTypename(typename);
type.setPid(pid);
//把数据保存到数据库
service.add(type);
//这里我是用到j-ui界面,要求返回json格式。如果不是用这个界面,那么请直接重定向到查询页面即可。
request.setAttribute("statusCode", 200);
request.setAttribute("message", "保存成功");
request.setAttribute("callbackType", "closeCurrent");
request.setAttribute("navTabId", "typelist");
//跳转到商品信息列表页面,在跳转到页面前,要先从数据库取出数据商品列表,所以要先跳转到查询的servlet中查询数据,再到页面
//response.sendRedirect(request.getContextPath() "/back/McServlet?task=query");
request.getRequestDispatcher("/ajaxDone.jsp").forward(request,
response);
}else if("updatepage".equals(task)){//到修改界面
//根据id到数据库取出类别信息,然后显示到页面
int id=WebUtils.StringToInt(request, "id", 0);
McType type=service.findById(id);
//要把type放到作用域,以便把数据传到界面
request.setAttribute("type", type);
//因为修改页面也要显示所有的大类信息,所以也要再到数据库取出数据,
List<McType> list=service.query(null);
//把list放到作用域中,以便把数据传到界面
request.setAttribute("list", list);
request.getRequestDispatcher("/back/mctype/updatemctype.jsp").forward(request, response);
}else if("update".equals(task)){
//从页面上取值
//id是int类型,要先从字符串转成int类型
int id=WebUtils.StringToInt(request, "id", 0);
String typename=request.getParameter("typename");
//父id是int类型,要先从字符串转成int类型
int pid=WebUtils.StringToInt(request, "pid", 0);
//把数据放到对象中
McType type=new McType();
type.setId(id);
type.setTypename(typename);
type.setPid(pid);
//把数据保存到数据库
service.update(type);
//这里我是用到j-ui界面,要求返回json格式。如果不是用这个界面,那么请直接重定向到查询页面即可。
request.setAttribute("statusCode", 200);
request.setAttribute("message", "修改成功");
request.setAttribute("callbackType", "closeCurrent");
request.setAttribute("navTabId", "typelist");
//跳转到商品信息列表页面,在跳转到页面前,要先从数据库取出数据商品列表,所以要先跳转到查询的servlet中查询数据,再到页面
//response.sendRedirect(request.getContextPath() "/back/McServlet?task=query");
request.getRequestDispatcher("/ajaxDone.jsp").forward(request,
response);
}else if("delete".equals(task)){
//删除大类时,这个大类下的所有小类也一起删除。删除小类时不用删除大类
//id是int类型,要先从字符串转成int类型
int id=WebUtils.StringToInt(request, "id", 0);
service.delete(id);
//这里我是用到j-ui界面,要求返回json格式。如果不是用这个界面,那么请直接重定向到查询页面即可。
request.setAttribute("statusCode", 200);
request.setAttribute("message", "删除成功");
request.setAttribute("navTabId", "typelist");
//跳转到商品信息列表页面,在跳转到页面前,要先从数据库取出数据商品列表,所以要先跳转到查询的servlet中查询数据,再到页面
//response.sendRedirect(request.getContextPath() "/back/McServlet?task=query");
request.getRequestDispatcher("/ajaxDone.jsp").forward(request,
response);
}
}