目 录
摘 要 I
Abstract II
1 正文 1
1.1研究背景分析 1
1.2 超市管理系统的概述 2
1.3所需软、硬件技术准备 2
1.4可行性分析 3
1.4.1 技术可行性 3
1.4.2 经济可行性 3
1.4.3 社会可行性 3
2 需求分析 4
2.1 需求分析的任务及主要内容 4
2.2.1 具体业务的需求 4
2.2 层次图 4
2.3数据流图 5
3 概要设计 5
3.1 系统分析 5
3.1.1 系统的总体分析 6
3.2 数据库的设计与实现 6
3.2.1 数据库系统分析 7
3.2.2 数据库物理实现 7
4 详细设计 9
4.1 Servlet的详细应用 9
4.2 特定模块的详细介绍 9
4.2.1 登陆模块 9
4.2.2 账单管理模块 15
4.2.2 供应商管理模块 21
4.2.3 用户管理模块 26
5 系统测试 32
结 语 33
注 释 34
参考文献 35
致 谢 37
附录1 38
1.4可行性分析
1.4.1 技术可行性
本系统戏是用java语言所编写的,java语言作为前导课程已经学过。重点学习了jsp,最后又系统的学习了Servlet,Servlet这同时又是本系统应用的重点。从设计,开发,测试到最后的维护,都综合了所学的java知识。本系统所实现的是超市管理,因此在给定的时间内完成是绝对可行。制作本系统的软件均可以在网上免费获得,同时也可以获得开源的代码和图片。本组的技术人员有开发此类项目的经验。综上所述,此系统开发有可靠的技术支持,技术上是完全可行的。
1.4.2 经济可行性
对本组的经济现状和投资能力进行分析,对系统建设运行和维护费用进行估算,对系统建成后可能取得的社会和经济效益进行估计。由于本系统是作为毕业设计由我们学生自己开发的,在经济上的投入甚微,系统建成之后将为超市行业提供很大的方便,因此在经济上是可行的。
1.4.3 社会可行性
本系统编程所使用的是网上的开源代码和图片,又不以获利为目的。因此不必承担任何法律责任
2 需求分析
2.1 需求分析的任务及主要内容
2.2.1 具体业务的需求
主要模块包括:
(1)账单管理模块,主要是管理超市,账单的编号、商品名称、商品数量、交易金额、是否付款、供应商名称、商品描述、账单时间。然后计算出顾客购买商品的总价,计算顾客实付金额和应付金额的差价。减少人工计算产生的错误。
(2)供应商管理模块,主要管理与超市合作的供应商,有编号、供应商名称、供应商描述、联系人、电话、地址。
(3)用户管理模块,主要管理管理超市的用户,有编号、用户名称、性别、年龄、电话、地址、权限。用户管理信息化,减少了人力资源的浪费。
。
2.2 层次图
图2-1层次图
2.3数据流图
图2-2
图2-3
代码:public class HandelLogin extends HttpServlet{UserOper oper=new UserOper();public void init(ServletConfig config)throws ServletException{super.init(config);}public void destroy() {super.destroy(); }public void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {this.doPost(request, response);}public void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{request.setCharacterEncoding("utf-8");response.setCharacterEncoding("utf-8");response.setContentType("text/html;charset=utf-8");HttpSession session=request.getSession(true);String op = request.getParameter("op");String opg= request.getParameter("opg");String opyh = request.getParameter("opyh");String zdgroup=request.getParameter("zdgroup");System.out.println(zdgroup);String gysgroup=request.getParameter("gysgroup");Login judgeLogin = (Login)(session.getAttribute("login"));if ("doLogin".equals(op)) {doLogin(request, response);return;}if (judgeLogin!=null&&!"".equals(judgeLogin)){if("经理".equals(judgeLogin.getYh_quanxian())){if ("ZD".equals(op)){doLnquiresZD(request,response);}else if("ZDAdd".equals(op)){doZDAdd(request,response);}else if("ZDXinXi".equals(op)){ doZDXinXi(request,response);}else if("修 改".equals(op)){ doZDXiuGai(request,response);}else if("删 除".equals(op)){ doZDDel(request,response);}else if("组合查询".equals(zdgroup)){doZDChaXun(request,response);}else if("GYS".equals(op)){doLnquiresGYS(request,response);}else if("GYSAdd".equals(op)){ doGYSAdd(request,response);}else if("GYSXinXi".equals(op)){ doGYSXinXi(request,response);}else if("修 改".equals(opg)){doGYSXiuGai(request,response);}else if("删 除".equals(opg)){doGYSDel(request,response);}else if("组合查询".equals(gysgroup)){doGYSChaXun(request,response);}else if("YH".equals(op)){doLnquiresYH(request,response);}else if("YHAdd".equals(op)){ doYHAdd(request,response);}else if("YHXinXi".equals(op)){ doYHXinXi(request,response);}else if("修 改".equals(opyh)){doYHXiuGai(request,response);}else if("删 除".equals(opyh)){doYHDel(request,response);}else if ("查询".equals(opyh)) {doYhChaXun(request,response);}else if("修改密码".equals(opyh)){ doYHMiMa(request,response);}else if("修改密码".equals(op)){doAdminMiMaXiuGai(request,response);}}if("普通用户".equals(judgeLogin.getYh_quanxian())){if ("ZD".equals(op)){doLnquiresZD(request,response);}else if("ZDAdd".equals(op)){doZDAdd(request,response);}else if("ZDXinXi".equals(op)){ doZDXinXi(request,response);}else if("修 改".equals(op)){ doZDXiuGai(request,response);}else if("删 除".equals(op)){ doZDDel(request,response);}else if("组合查询".equals(zdgroup)){doZDChaXun(request,response);}else if("GYS".equals(op)){doLnquiresGYS(request,response);}else if("GYSAdd".equals(op)){ doGYSAdd(request,response);}else if("GYSXinXi".equals(op)){ doGYSXinXi(request,response);}else if("修 改".equals(opg)){doGYSXiuGai(request,response);}else if("删 除".equals(opg)){doGYSDel(request,response);}else if("组合查询".equals(gysgroup)){doGYSChaXun(request,response);}else if("YH".equals(op)||"修改密码".equals(op)||"修改密码".equals(opyh)||"查询".equals(opyh)||"删 除".equals(opyh)||"修 改".equals(opyh)||"YHXinXi".equals(op)||"YHAdd".equals(op)){Information info=new Information();String msg="对不起您没有那么高的权限";info.setMsg(msg);request.setAttribute("info", info);request.getRequestDispatcher("mainWindow.jsp").forward(request, response);}}}else{response.sendRedirect("login.jsp");}}