首页 玩具超市管理系统(JAVA)毕业设计说明书

玩具超市管理系统(JAVA)毕业设计说明书

举报
开通vip

玩具超市管理系统(JAVA)毕业设计说明书玩具超市管理系统(JAVA)毕业设计说明书 摘 要 由于目前市场经济的快速发展,互联网技术的普及以及经济全球化进程 的加剧,使得市场竞争更加激烈,为了解决企业由于市场竞争所带来的缩短 交货期、提高产品质量、降低产品成本以及实现“零库存”等的巨大压力, 企业的销售管理模式必须改革。基于电子商务的销售链管理模式极大地满足 了消费者的个性需求以及企业管理的要求,这种模式的出现不仅缩短了企业 与用户需求之间的距离,同时也大大减少了各种经济资源的消耗,极大提高 了商务活动的效率。 本系统采用当前较为流行的B/S结构和J...

玩具超市管理系统(JAVA)毕业设计说明书
玩具超市管理系统(JAVA)毕业 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 说明书 摘 要 由于目前市场经济的快速发展,互联网技术的普及以及经济全球化进程 的加剧,使得市场竞争更加激烈,为了解决企业由于市场竞争所带来的缩短 交货期、提高产品质量、降低产品成本以及实现“零库存”等的巨大压力, 企业的销售管理模式必须改革。基于电子商务的销售链管理模式极大地满足 了消费者的个性需求以及企业管理的要求,这种模式的出现不仅缩短了企业 与用户需求之间的距离,同时也大大减少了各种经济资源的消耗,极大提高 了商务活动的效率。 本系统采用当前较为流行的B/S结构和JSP动态网页开发技术,通过对系统进行一系列的需求分析、设计、编码、测试等工作,实现系统的基本功 能。 关键词:玩具超市,B/S结构,JSP技术,SQL Server 2000 Abstract With the rapid development of market and economic and the wider application of Internet technology and the intensification of the process of economic globalization, the market competition get more intensity. In order to relieve the tremendous pressure of enterprises, for example, to shorten delivery time for the competitiveness in the market and improve product quality and lower production costs and achieve "zero inventories", the method of sales management of the enterprises must be reformed. Based on e-commerce Sales Chain Management model, it can meet demand of personalized consumer and enterprises management greatly. The model can reduce not only the distance between enterprises and consumer but also the consumption of all kinds of economic resources, so it can greatly enhance the efficiency of business. After careful investigation of this system, the more popular use of the current B / S structure and JSP dynamic web development technologies, through a series of demands on the system analysis, design, coding, testing, etc., to achieve the basic functions of the system. Key words:Toy supermarket, B/S structure, Java Server Pages technology, SQL Server 2000 目 录 第1章 概述 ......................................................... 1 1.1 课题背景 .................................................... 1 1.2 玩具超市管理系统发展现状.................................... 1 第2章 系统需求分析 ................................................. 3 2.1 系统需求及可行性分析 ........................................ 3 2.1.1 系统分析概述 ............................................ 3 2.1.2 系统需求分析 ............................................ 3 2.1.3 系统可行性分析 .......................................... 4 2.2 系统业务流程图 .............................................. 5 2.3 系统数据流程分析 ............................................ 6 2.4 数据字典 .................................................... 8 2.5 系统运行环境分析 ............................................ 9 2.5.1 硬件环境分析 ............................................ 9 2.5.2 软件环境分析 ............................................ 9 第3章 系统总体设计 ................................................ 10 3.1 系统架构 ................................................... 10 3.2 技术架构 ................................................... 11 3.3 系统相关模块设计 ........................................... 11 3.4系统数据库设计 ............................................. 13 3.4.1 数据库设计概述 ......................................... 13 3.4.2 数据库的概念设计 ....................................... 13 3.4.3 数据库的逻辑设计 ....................................... 15 3.4.4 数据库的物理设计 ....................................... 15 第4章 系统详细设计 ................................................ 19 I 4.1 数据库连接设计 ............................................. 19 4.2 商品管理模块的实现 ......................................... 20 4.3 POS单管理模块的实现 ....................................... 22 4.4 凭单点货模块的实现 ......................................... 23 4.5 收款管理模块的实现 ......................................... 25 第5章 系统验证 .................................................... 27 5.1 系统测试概述及验证功能 ..................................... 27 5.1.1 系统测试概述 ........................................... 27 5.1.2 验证功能说明 ........................................... 28 5.2 系统登录验证 ............................................... 28 5.3 系统测试用例及效果 ......................................... 28 结 论 ............................................................. 30 致 谢 ............................................................. 31 参考文献 ........................................................... 32 附录 系统设计部分源代码 ............................................ 34 II Contents Chapter Overview .................................................................................................. 1 1.1 Background Issues .............................................................................................. 1 1.2 Development of Toy Supermarket Management System ................................... 1 Chapter System Requirements Analysis.............................................................. 3 2.1 System Requirements and Feasibility Analysis .................................................. 3 2.1.1 System Overview ........................................................................................ 3 2.1.2 System Requirements Analysis ................................................................... 3 2.1.3 Feasibility Analysis ..................................................................................... 4 2.2 System operational flow chart ............................................................................ 5 2.3 System Data Flow Analysis ................................................................................ 6 2.4 Data Dictionary .................................................................................................. 8 2.5 Analysis of Operating Environment System ...................................................... 9 2.5.1 Hardware Environment ............................................................................... 9 2.5.2 Software Environment ................................................................................. 9 Chapter System Design ....................................................................................... 10 3.1 System Architecture ......................................................................................... 10 3.2 Technical Architecture ...................................................................................... 11 3.3 Design of system-related modules ................................................................... 11 3.4 System Database.............................................................................................. 13 3.4.1 Database Design Overview ....................................................................... 13 3.4.2 The conceptual design of the database ...................................................... 13 3.4.3 Logical Database Design ........................................................................... 15 3.4.4 Physical database design ........................................................................... 15 Chapter The Detailed design of the System ...................................................... 19 I 4.1 Database Connection Design............................................................................ 19 4.2 Commodity Management Module .................................................................... 20 4.3 POS Implementation of a Single Management Module ................................... 22 4.4 Implementation of Voucher Points Cargo Module ........................................... 23 4.5 Receivables Management Module ................................................................... 25 Chapter System verification ............................................................................... 27 5.1 System Overview and Validation Testing ......................................................... 27 5.1.1 System Testing Overview .......................................................................... 27 5.1.2 Verify Function .......................................................................................... 28 5.2 System login authentication ............................................................................. 28 5.3 System Test Cases and Results ......................................................................... 28 Conclusion ................................................................................................................. 30 Acknowledgements ................................................................................................... 31 References ................................................................................................................. 32 Appendix System Design Part of the Source code ................................................. 34 II 第1章 概述 1.1 课题背景 目前我国有8000 家玩具生产企业, 其中3000 家已通过出口许可证注册。我国已成为玩具生产/出口大国。随着我国出口玩具业的日益发展, 我国 出口玩具在国际市场上占有的份额越来越多。在玩具国际市场日益饱和和近 些年发达国家经济不景气的双重压力下, 发达国家便以各式各样的名义对我 国出口玩具采取了形式各异的贸易壁垒; 与此同时我国出口玩具业未跟上国 际市场变化, 出口玩具不适应市场要求和出口玩具业在产品开发中存在的种 种弊端, 使得我国出口玩具业陷入困境, 面临严峻考验, 产业亟须加以引导。 洪生玩具超市信息管理系统的建立有利于玩具商品的流通,实现了用户 网上购买玩具的需求,也是新时代销售的需求。 1.2 玩具超市管理系统发展现状 在我国超市形成在20世纪90年代初期,现在已经成为我国零售业的一 种重要形态,特别是玩具超市这一单一的方面,为国民经济的发展发挥了重 要的作用。随着玩具超市高速的发展,其经营管理也变得愈加复杂,早期的 售货员站柜台的形式早已不能满足现有销售也的发展,这样就迫切地需要引 入新的管理技术。 玩具超市形态具有种种优点,但在目前状况下,它仍存在零售业企业所 共有的落后的一面,如:不能有效地管理每种商品,收款结算速度慢,容易 出现营业差错,不宜进行商品调价,盘点效率低等,而且在超市日常管理中, 1 商品的进、销、存等决策以经验为主,缺乏实时分析功能,管理人员对及时 传递资料的要求始终得不到满足。超市形态的高速发展,其经营管理也变得 愈加复杂,日常所需要处理的数据量也逐渐增大,商业运转的中间环节也越 来越多,原始的人工管理已无法应对这复杂的市场。 为此,本人设计一套关于玩具超市的信息管理系统,依靠现代化的计算 机信息处理技术来管理超市,从而节省了大量的人力、物力,改善了员工的 工作条件,减轻了劳动强度,并且能够快速反映出商品的进、销、存等状况 和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快 超市经营管理效率。 这套系统对于中小型的玩具超市非常适用,系统对玩具超市的物品管 理,订单管理等等功能都有一系列的处理方法。而且系统操作简单,便于使 用,对于那些对计算机不了解的人群也能非常熟练的操作本系统。 2 第2章 系统需求分析 2.1 系统需求及可行性分析 2.1.1 系统分析概述 需求分析可分为问题识别、分析与综合、编制需求分析文档、需求评审 等四个阶段,包括以下几个方面:确定软件所期望的用户类;获取每个用户 的需求;了解实际用户任务和目标以及这些任务所支持的业务需求;分析员 与用户的信息以区别用户任务需求、功能需求、业务规则、质量属性、建议 解决方法和附加信息;将系统级的需求分为几个子系统,并将需求中的一部 分分配给软件组件;了解相关质量属性的重要性;讨论得出实施优先级;将 所收集的用户需求编写成需求规格说明和模型;评审需求规格说明,确保与 用户达成共识。 2.1.2 系统需求分析 洪生玩具超市信息管理系统是一套面向中小型玩具超市开发的商品交 易管理系统,具备先进的电子商务运营及信息管理理念。系统包含以下功能: 1.商品管理功能 玩具产品管理具有对玩具的名称、类别、玩具出厂时间地点、玩具的进 货价格和销售价格以及玩具进货数量等等商品信息进行具体的管理。 2.订单信息管理功能 当用户需要购买某个玩具商品时,同时也需要写下具体的订单,以提供 3 给超市管理员进行处理,由管理员进行订单确认,订单信息修改,然后负责 人订单支付确认,订单流程处理完毕,交给凭单点货模块进行处理。 3.凭单点货功能 在订单处理之后,由管理员进行点货处理,按照相应的订单信息对所需 要的玩具商品进行查询、交货等具体处理。 4.收款管理功能 在交货之前,由超市管理员确认用户是否付款,完成最后的交易流程。 还可以对已销售的玩具商品进行查看和具体的查询功能,统计销售情况。 2.1.3 系统可行性分析 1.技术及开发方法可行性 (1)通过详细的调研和借鉴成功的经验能采集到足够的信息。严格按 [2]照数据库开发流程进行设计,确定和使用所得信息才可创建完善的数据库。 (2)采用先进科学和广为流行的设计方法,有助于对系统进行科学严 谨,全面完整的设计,简化设计流程,降低出错率。 (3)JavaBean是已成熟的技术,加以使用有助于加快和简化程序的设 [3]计。 2.管理可行性 模块化的设计方法,有助于软件开发过程的管理,因为科学合理的将整 个程序划分多个功能模块,各模块单独设计,用助于降低整个程序的设计难 度及减少错误程序的影响范围,子模块易于实现,又使整个程序易于衔接和 修改。 4 2.2 系统业务流程图 系统设计以前,要对系统需求进行归纳分析,查找出所有的业务主角, 确定业务主角后,每个主角的相关活动及流程应清晰地制定出来,最终设计 出逻辑视图、用户界面示意图。 本业务系统流程图,如图2-1所示。 商品信息 添加商品信息 查看商品信息 查询商品信息 维护商品信息 订单信息 添加订单信息 删除订单信息 查看订单信息 修改订单信息 查询订单信息 理员 管理员 管 点货信息 点货 查看点货信息 收款信息 查看收款信息 收款 图2-1 系统业务流程图 5 在进行业务流程设计,需要注意以下事项: 1.调查用户网络环境和配置,使系统能够具有合理可行的系统架构; 2.调查用户偏好和技能水平,这直接影响到项目开发的深度和用户界 面的设计; 3.预测并制定系统的性能指标,为编写测试 计划 项目进度计划表范例计划下载计划下载计划下载课程教学计划下载 提供依据。 2.3 系统数据流程分析 数据流程图是一种能全面地描述信息系统逻辑模型的主要工具,它可以 用少数几种符号综合地反映出信息在系统中的流动、处理和存储情况。 根据业务流程特点,首先对各个方面总的数据处理环节和外部实体进行 了描述, 然后,根据自顶向下,逐层分解的原则,对每个方面的处理功能进 行细化并分成若干个处理功能,产生细化DFD图。以下是本文当中使用的数 据流图图例,见图2-2所示。 外部实例 处理工程 数据流 数据存储 图2-2 数据流图图例 该玩具超市管理系统中主要涉及到的外部实体有:管理员;数据流有: 商品信息、订单信息、点货信息、收款信息。数据处理过程是:每个外部实 体与输入数据流给网上超市管理系统这个处理过程,经过系统的处理得到相 关的数据流或者数据存储。 具体实现总体流程的数据流图如图2-3、图2-4所示。 6 管理员 管理员 P1 商品信息 商品信息 订单信息 订单信息 洪生玩具超市 管理系统 点货信息 点货信息 收款信息 收款信息 图2-3 系统顶层数据流图 管理员 管理员 商品信息 商品信息 商品信息 P3.2 P3.1 查看商品信息 查看商品信息 P3.3 D2 商品信息 查看商品信息 图2-4 商品信息管理数据流图 7 2.4 数据字典 数据字典是对流程图加以补充说明的工具,为系统管理员提供了数据项 的综合信息。下面将列出管理系统中的几个重要数据元素。 商品信息管理模块数据字典部分数据条目。 1.外部实体定义: 名称: 管理员 总编号:1-001 说明:商品信息管理人员 编号:001 输入数据流:商品信息 输出数据流:商品信息 2.处理过程定义: 名称:管理商品信息 总编号:2-001 说明:管理员管理商品信息 号:P3.1 输入数据流:商品信息 输出数据流:商品信息 名称:添加商品信息 总编号:2-002 说明:管理员对商品信息进行添加 编号:P3.2 输入数据流:商品信息 输出数据流:商品信息 名称:查看商品信息 总编号:2-001 说明:管理员查看商品信息 编号:P3.3 输入数据流:商品信息 输出数据流:商品信息 8 3.数据存储定义: 名称:商品信息 总编号:3-001 别名:已发布的商品信息 编号:D2 数据流来源:编号+名称等 关键字:商品信息编号 以上表分别是对商品管理的外部实体、处理过程、数据存储条目进行的 分析,进而对底层的数据流图细化和说明。 2.5 系统运行环境分析 2.5.1 硬件环境分析 处理器:InterCR300 或更高 内存:512MB或更高(建议1GB) 硬盘空间:40GB以上 2.5.2 软件环境分析 操作系统: Windows 2000/Windows XP 数据库:SQL Server 2000 系统开发工具:Eclipse/My eclipse 软件开发语言: JSP+JAVA 服务器:Tomcat 9 第3章 系统总体设计 3.1 系统架构 本系统采用MVC设计模式下的Struts框架,Struts是Apache组织的一个开放源码项目。Struts是一个比较好的MVC框架,提供了对开发MVC系统的底层支持,它采用的主要技术是Servlet,JSP和Custom tag library。在Struts框架中,模型由实现业务逻辑的JavaBean或EJB组件构成,控制器由 [7]ActionServlet和Action来实现,视图有一组JSP文件构成。 如图Struts实现的MVC架构3-1所示。 struts-config.xml 模型 控制器 JavaBean ActionServlet Action Web服务浏览器 EJB 器 Action 视图 Action JSP 图3-1 Struts实现的MVC架构 Struts实现的重点在C(Controller),包括ActionServlet/RequestProcessor 10 和本人们定制的Action,也为V(View)提供了一系列定制标签。但Struts几乎没有涉及M(Model),所以Struts可以采用JAVA实现的任何形式的商业逻辑。 3.2 技术架构 本系统的前端设计主要是JSP技术,后端数据库架构主要又SQL Server来完成,系统的服务器配置主要是TOMCAT服务器。 用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面,并使用JSP标识或者小脚本来生成页面上的动态内容(内 容是根 据请求变化的,例如请求账户信息或者特定的一瓶酒的价格等)。生 成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在脚本中,所有 的脚本在服务器端运行。由于核心逻辑被封装在标识和JavaBeans中,所以Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生 [8]成。 SQL Server2000 是一个关系数据库管理系统,是Microsoft 公司推出的SQL Server 数据库管理系统的一个版本。SQL Server 2000 提供了以 Web 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 为基础的扩展数据库编程功能。丰富的 XML 和 Internet 标准支持允许 [14]您使用内置的存储过程以 XML 格式轻松存储和检索数据。 Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户 不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。Tomcat运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统 常用的功能。 3.3 系统相关模块设计 通过对本系统的分析,该系统主要分为商品信息管理、POS单管理、凭单点货管理、以及收款管理四部分。系统功能结构图如下图3-2所示。 11 商品管理模块实现对玩具商品进行添加、查询玩具商品信息、对商品信 息进行详细修改、删除商品信息等功能。 POS单信息管理模块实现对POS单的添加、查询POS单信息、对POS信息进行详细修改、删除POS单信息等功能。 凭单点货管理模块实现了对点货等信息生成的订单管理,包括对订单状 态的变更,对点货信息进行查询修改,由管理员最终进行交货确认。 收款信息管理模块实现对已销售的商品进行统计,同时查看对商品的付 款状态,进行最后确认。 洪生玩具超市管理系统 商品管理模块 POS单管理模块 凭单点货模块 收款管理模块 查修删查 添查修删查查 查查 看改除看添加询改除看询 询看 商商商P加PPPP点点交销销付品品品O商OOOO货货货售售款 信信S信品 SSSS信信信信息 息 单 息 单 单 单单 息 息 息 息 图3-2 系统功能结构图 12 3.4系统数据库设计 3.4.1 数据库设计概述 数据库设计是在给定的DBMS、操作系统和硬件环境下,如何表达用户 的需求,并将其转换为有效的数据库结构,构成较好的数据库模式,这个过 [15]程称为数据库设计。 3.4.2 数据库的概念设计 概念设计对用户要求描述的现实世界(可能是一个工厂、一个商场或者 一个学校等),通过对其中住处的分类、聚集和概括,建立抽象的概念数据模 型。在需求分析和逻辑设计之间增加概念设计阶段,可以使设计人员仅从用 户的角度看待数据及处理要求和约束。以扩充的E-R模型方法为例,第一步先明确 现实各部门所含的各种实体及其属性、实体间的联系以及对信息的制 约条件等,从而给出各部门内所用信息的局部描述;第二步再将前面得到的 多个用户的局部视图集成为一个全局视图,即用户要描述的现实世界的概念 数据模型。 根据系统分析得到以下业务规则: (1)一个商品可以有多个订单,一个订单只能对应一个商品,多个订 单可以对应一个商品。 (2)一个订单只能有一个收款信息,一个收款信息也对应有一个订单。 (3)多个订单中有一个POS单,一个POS单中具有多个订单信息。 (4)一个用户中有多个收款信息,一个收款信息对应有一个用户。 由此可得概念模型(E-R)中应具有订单信息、商品信息、收款信息、 用户信息这四个实体。 根据系统的特点,可绘制如图3-3所示的数据库E-R图如下。 13 订单编号 数量 POS编号 价格 商品编号 N 1 对应 对应 订单信息 商品编号 N 1 1 对应 商品名称 订单编号 1 订单编号 品牌 付款编号 销售员 单位 商收P创建时间 创建时间 品款进货价格 O信信S单据状态 息 息 付款时间 销售价格 信 息 厂商 厂商 状态 N 数量 对应 备注 1 用户信息 备注 用户名 添加时间 密码 电话 性别 真是姓名 图3-3 数据库E-R图 14 3.4.3 数据库的逻辑设计 逻辑设计是把概念设计阶段设计好的E-R图转换成与选用的DBMS产品所支持的数据模型相符合的逻辑结构。 用户信息(用户名,密码,真实姓名,电话,性别,添加时间,备注) 商品信息(商品编号,商品名称,品牌,单位,进货价,销售价,厂商, 数量,备注) 订单信息(订货编号,商品编号,POS编号,数量,价格) 付款信息(销售员,订单编号,付款编号,状态,创建时间,付款时间, 金额) POS信息(订单编号,销售员,创建时间,单据状态,厂商) 3.4.4 数据库的物理设计 物理设计主要是指把逻辑设计当中的关系模式图在数据库中以基本表 的形式建立出来。 用户信息表如表3-1所示。用户信息表表中所包含的字段内容主要有 useName,password,realName,sex,phone,useCt,user,Remarks。其中userName为主键。 表3-1 用户信息表 userName Varchar 20 用户名 password Varchar 20 密码 realName Varchar 20 真实姓名 sex Varchar 4 性别 phone Varchar 20 电话 userCt Datetime 8 创建时间 15 (续表3-1) userRemarks Text 100 备注 商品信息表如表3-2所示。商品信息表表中所包含的字段内容主要有 itemNo,itemName,itemPinPai,unit,basePrice,salePrice,factory,amount, itemRemarks。其中itemNo为主键。 表3-2 商品信息表 itemNo Varchar 20 商品编号 itemName Varchar 100 商品名称 itemPinPai Varchar 50 品牌 unit Varchar 20 单位 basePrice Varchar 20 进货价格 salePrice Varchar 20 销售价格 factory Varchar 100 厂商 amount Varchar 20 数量 itemRemarks Varchar 200 备注 订单信息表如表3-3所示。订单信息表表中所包含的字段内容主要有 bookBillDNo,itemNo,bookBillNo,billAmount,billPrice。其中bookBillDNo为主键, itemN, bookBillNo为外键。 表3-3 订单信息表 bookBillDNo Varchar 20 订单编号 16 (续表3-3) itemNo Varchar 20 商品编号 bookBillNo Varchar 20 POS编号 billAmount Varchar 20 数量 billPrice Varchar 20 价格 收款信息表如表3-4所示。收款信息表表中所包含的字段内容主要有 useName,bookBillNo,moneyNo,moneyStatus,moneyCreateTime,moneyFinishTime,moneyAmount。其中moneyNo为主键, bookBillNo为外键。 表3-4 收款信息表 userName Varchar 20 售货员 bookBillNo Varchar 20 订单编号 moneyNo Varchar 20 付款编号 moneyStatus Varchar 20 状态 moneyCreateTime Datetime 8 创建时间 moneyFinishTime Datetime 8 付款时间 moneyAmount Varchar 20 金额 POS信息表如表3-5所示。收款信息表表中所包含的字段内容主要有 bookBillNo,userName,createTime,bookBillstatus。其中bookBillNo为外键。 17 表3-5 POS信息表 bookBillNo Varchar 20 订单编号 userName Varchar 20 售货员 createTime Datetime 8 创建时间 bookBillstatus Varchar 20 单据状态 factoryName Varchar 20 厂商 18 第4章 系统详细设计 4.1 数据库连接设计 数据库采用JDBC-ODBC方式连接数据库,能够实现前台界面和后台数 [17]据库的连接。 Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。 JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是 接口 模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商 及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标 准并支持与其它数据库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现 的接口。 使用JDBC连接数据库的第一步是装载驱动程序。装载驱动程序只需要 非常简单的一行代码。 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 驱动程序文档将告诉应该使用的类名。这里类名是 driverClassName,将用代码以下的代码装载驱动程序: Class.forName("driverClassName"); 加载 Driver类后,它们即可用来与数据库建立连接。 使用JDBC连接数据库的第二步是建立连接。用适当的驱动程序类与 DBMS 建立一个连接。 主要代码如下: Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstan ce(); //装载驱动程序 String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=wanju 19 Data"; //wanjuData为数据库 String user="sa"; //连接SQL Server数据库登录名 String password=" "; //连接SQL Server数据库登录名sa的密码 Connection conn= DriverManager.getConnection(url,user,password); //连接SQL Server字符串 4.2 商品管理模块的实现 进入该系统,通过身份验证,确定身份为管理员之后,可以对系统中所 有的商品信息进行维护,包括查询商品的所有信息,对商品信息进行修改, 删除商品的信息,同时也可以对新商品进行添加。实现页面如图4-1所示。 图4-1 商品管理页面 在添加商品时,单击导航区的“新增”按钮,系统将打开添加商品页面, 该页面主要用于商品信息添加到数据库表中,以提供前台页面的商品展示的 数据依据。商品添加页面的运行结果如图4-2所示。 20 图4-2 添加商品页面 对商品信息添加的关键代码如下: function validateform(){ //判断商品名称是否为空和长度是否超过 规定 关于下班后关闭电源的规定党章中关于入党时间的规定公务员考核规定下载规定办法文件下载宁波关于闷顶的规定 长度 if($("itemName").value==""||byteLength($("itemName").value)>100){ alert("商品名称不能为空,且最多为100个字符!"); return false; } //判断商品名称品牌是否为空和长度是否超过规定长度 if($("itemPinPai").value==""||byteLength($("itemPinPai").value)>50){ alert("商品品牌不能为空,且最多为50个字符!"); return false; } //判断进价是否为数字 if(!f_check_price($("basePrice"),'进价')){ return false; } //判断售价是否为数字 if(!f_check_price($("salePrice"),'售价')){ 21 return false; }//判断可售数量是否为数字 if(!f_check_price($("amount"),'可售数量')){ return false; } if(byteLength($("itemRemarks").value)>2000){ alert("备注最多为2000个字符!"); return false; } return true; } 4.3 POS单管理模块的实现 POS单是证明客户购买玩具的凭证,也是超市进行财务汇总的票据。管 理员登录以后可以对系统中所有的POS单进行维护,包括对POS单的查询、 新增、修改、删除等操作,同时也可以对新POS单进行添加。实现页面如图4-3所示。 图4-3 POS单管理页面 22 关键代码如下: function doAdd(){//新增页面转向 window.location.href="<%=request.getContextPath()%>/bookBill/book BillInfo.jsp?pageStatus=add"; }//提交页面查询 function doSearch(){ document.forms[0].submit(); } 对POS单添加的时候,实现的页面如图4-4所示。 图4-4 新增POS单页面 从图4.4所示的新增POS单实现页面可以看出,在新增POS单是需要对订单编号、开单时间、供货厂商、单据状态等信息进行填写的。 4.4 凭单点货模块的实现 该功能模块是对玩具超市商品交货的管理。当客户下订单之后,在这里 将显示销售单号,以便交货之后打印出POS单上的销售单号与之相对应。然 后管理员进入该模块页面时,就可以查询销售单的信息,当管理员核对信息 23 之后,发现没有错误,然后选择对应的销售单进行交货等功能,实现页面如 图4-5所示。 图4-5 凭单点货模块实现页面 关键代码如下: function doAdd(){ window.location.href="<%=request.getContextPath()%>/bookBill/bookBillI nfo.jsp?pageStatus=add"; } function doSearch(){ document.forms[0].submit(); } function doUpdate(){if(!isCanDo())return false; var value = getPk($("pk").value+"Radio"); if(value==""){ alert("请选择一条数据!"); return false; } $($("pk").value).value = value document.forms[0].action="<%=request.getContextPath()%>/bookBill/q 24 ueryForView.do"; document.forms[0].submit(); } function doFinish(){ if(!isCanDo())return false; var status = getPkStatus($("pk").value+"Radio") if(status=="交货"){ alert("该销售单已经交货!");return false; } var value = getPk($("pk").value+"Radio"); if(value==""){ alert("请选择一条数据!"); return false; } $($("pk").value).value = value document.forms[0].action="<%=request.getContextPath()%>/bookBill/d oSend.do"; document.forms[0].submit(); } 4.5 收款管理模块的实现 该模块主要实现的是对用户付款信息进行查看和查询,当用户下完订单 之后,执行完凭单点货功能之后,用户付款之后及时通知给超市管理员,然 后管理员按照用户所持的销售单号进行查询付款信息,以及确认。实现页面 如图4-6所示。 25 图4-6 收款管理页面 关键代码如下: function doMoney(){if(!isCanDo())return false; if(getPkStatus($("pk").value+"Radio")=="已付款"){ alert("该销售单已经付款");return false; } var value = getPk($("pk").value+"Radio"); if(value==""){ alert("请选择一条数据!");return false; } $($("pk").value).value = value document.forms[0].action="<%=request.getContextPath()%>/money/do Money.do"; document.forms[0].submit(); } 26 第5章 系统验证 5.1 系统测试概述及验证功能 5.1.1 系统测试概述 在任何软件系统的开发过程中,尤其是在进行大型软件系统的开发中, 任何一个编程人员都不可避免地会产生错误。为了尽可能地发现并改正系统 设计中的错误,减少错误造成的损失,保证系统开发的质量,需要进行系统 的测试。在测试前,必须先正确的认识测试[]。 不能彻底测试程序。软件工程的总目标是充分利用有限的人力和物力资 源,高效率、高质量地完成软件开发项目。在测试阶段既然穷举测试是不可 实现的,为了节省时间和资源,提高测试效率,就必须精心设计测试用例, 使得采用这些测试数据能够取得最佳的测试效果。 软件测试的目的不是证实程序的正确性。 软件错误是不可避免的。开发过程中软件错误之所以不可避免,从客观 上讲,是由于所开发的软件具有相当的复杂性。软件开发的实践一再表明, 指望整个开发过程完全不出现人为的差错是不可能的,问题在于如何能够及 时地发现和排除各种隐匿的差错。 及时排除早期开发中的错误。这样可以排除它给后期工作带来的麻烦。 也就避免付出高额的代价,从而大大提高开发的效率。 程序验证方法无法取代测试。在实际的软件开发项目中,测试仍然是最 为现实、有效的质量保证手段。 27 5.1.2 验证功能说明 对登录界面的测试 需求描述:登录界面,两个输入框,用户名和密码,用户名和密码不能 为空,输入错误的用户名或密码要提示错误信息。 5.2 系统登录验证 1.分析影响该功能的因素及每个因素的可能取值 用户名:正确,错误,空。 密 码:正确,错误,空。 2.登录界面测试说明 测试要点:用户名和密码。 测试路径:用户名和密码是否同时为真。 测试结果:为真,进入系统;为假,提示输入错误,重新输入用户信息。 5.3 系统测试用例及效果 系统登录的测试为例,见表5-1所示。 表5-1 系统通知表 编号 测试项 操作步骤 预期结果 输入实际结果 结果比 数据 较说明 用户名和密码 001 系统 在系统首页输为真进入系admin 不符合,用户名符合 登录 入用户名密码 统,否则,提12345 密码出错 示出错信息。 28 (续表5-1) 编号 测试项 操作步骤 预期结果 输入实际结果 结果比 数据 较说明 用户名和密码 002 系统 在系统首页输为真进入系admin 符合,登录系统 符合 登录 入用户名密码 统,否则,提11 示出错信息。 根据上面的系统入口测试用例,如果输入信息正确,进入系统。如出错, 其测试效果如图5-2所示。 图5-2 登录信息测试效果图 只有在用户名和密码同时正确,才能进入系统,否则无法登录,系统会 提示“用户名或者密码错误,请重新输入!”。 29 结 论 本系统为洪生玩具超市管理系统,该系统是一个中型的系统,并通过开发语言JSP加上数据库SQL Server2000进行前台和后台的整体框架设计。JSP+SQL Server这种模式在电子商务管理系统的开发和应用上非常灵活方 面。 在本次系统开发中实现的主要的功能有: (1)商品管理模块对商品的品牌、类别、厂商以及对商品的详细的管 理,同时还可以查询商品的具体销售情况。 (2)POS单信息管理模块包含了对商品进行销售之前的关于销售凭证 的管理,也是对已销售商品的一种管理以及对售后商品的统计。 (3)凭单点货管理模块包含了对用户在前台通过购买商品填写相应的 点货信息等信息生成的订单进行管理,包括对订单状态的变更,对点货信息 进行查询修改,由管理员最终进行交货确认。 (4)收款信息管理模块是对已销售的商品进行统计,同时查看对商品 的付款状态,进行最后确认。 因为时间的关系,系统的管理员功能并没有完美的完成,例如管理员和 用户信息的管理功能,静态页面的美化等功能。在安全措施上,目前系统没 有主要设计数据保护的功能等等,这些将在日后程序的使用过程中完善与优 化。 30 致 谢 这次毕业设计能够得以顺利完成,是指导老师和同学对本人的教诲、帮 助和鼓励的结果。在这里表示深深的谢意! 首先要特别感谢本人的指导老师-张枢老师,是您在毕业设计说明书撰 写过程中,提供了极大的帮助和指导。从开始选题到中期修正,再到最终定 稿,您提供了许多宝贵建议,在您教学工作之余,抽出时间亲自进行了指导, 毕业成果离不开老师的辛勤指导。在此过程中,老师渊博的专业知识、严谨 的治学态度、敬业的工作态度都给予了本人极大的鼓励与帮助。对于提出的 问题和遇到的困难都给予细心的解答和真诚的帮助,再次表示衷心的感谢。 31 参考文献 1 苟凌怡 陈晓波.基于SQL Server 2000的关系数据与XML的集成[J].计算机工程与应用.2001:45-48 2 张翠兰 刘友兆.基于java多线程WebGIS矢量数据库连接池的实现 [J].地理空间信息2009.2:12-16 3 戴歆 Dai Xin. JSP与JavaBean技术与Web应用程序开发[J]. 计算机工程与应用. 2007.5:15-19 4 张砚秋 陈川 何明德. 基于MVC设计模式构筑JSP/Servlet+EJB的Web应用[J].计算机工程.2001:27-33 5 刘春菊 朱欣焰.基于JSP/JavaBean的Web GIS实现技术[J].武汉大学学报(信息科学版).2003:28-30 6 刘佳 爱国.一种基于MVC模式和插件的触觉交互软件体系结构.[J]. 高技术通讯.2009:18-20 7 戴朝晖 吴敏.基于MVC模式的Web管理信息系统分析与设计[J].中南工业大学学报(自然科学版).2003:34-36 8 王向中 WANG Xiangzhong.基于MVC模式Web应用框架的研究和开发[J]. 电脑编程技巧与维护.2009:31-35 9 周娟 周尚超 谭炳文. 基于JSP和XML的在线裁判系统[J].计算机应用与软件. 2009:26-29 10 刚春燕 吴恩斯 戴玉刚.基于JSP的电子商务平台设计与实现[J].甘肃科技纵横.2009:38-39 11 田学强 TIAN Xue-qiang. JSP连接数据库技术的研究[J]. 天津职业 院校联合学报.2007.9:45-48 12 杜小甫. 构建JSP开发环境[J].黑龙江科技信息. 2009:24-25 13 曹晋 胡谷雨. 基于JSP技术的数据库查询分页显示[J].计算机技术 32 与发展.2007:26-35 14 蔡雷. 数据库查询语言SQL的语法分析及实现[J]. 计算机软件与理 论. 2006:25-36 15马思红 陆扬. 基于VB的SQL Server数据库访问技术[J].电脑与电信.2007(10):53-58 16翟大昆. 动态Web页的JSP技术分析[J].云南大学学报(自然科学版).2001 23(2):31-42 17 李肃义. 在JSP中使用JavaBeans连接数据库[J].吉林大学学报(信 息科学版).2002:20-29 18 刘晓华.JSP应用开发详解[M]. 北京.电子工业出版社.2007 19 Martin Hall.Windows Sockets 2 Application Programming Interface An Interface for Transparent Network Programming Under Microsoft Windows[J], Revision 2.2.1, USA:WinSock Group, 1997.5:50-63 20 Mcleod.Management system management in practice[J],Prentice Hall,1998:43-55 33 附录 系统设计部分源代码 商务平台销售流程模块主要代码如下: public class BookBillDAO extends BaseDAO { /** * 请求的入口,相当于业务处理类 * @param handlingPath 请求路径的标识 * @param actionform 本次action请求对应的actionform * @param request HttpServletRequest * @return */ public String services(String handlingPath, ActionForm actionform, HttpServletRequest request) throws DAOException{ BookBillActionForm form = (BookBillActionForm) actionform; String returnStr = FrontAction.SUCESS; String schema = tableName; if(tableName.indexOf(".")!=-1){ schema = schema.substring(0, schema.lastIndexOf(".")+1); }else{ schema = ""; } if("bookBill.add".equals(handlingPath)){ // 新增Param form.setCreateTime("$getdate()"); form.setBookBillstatus("未生效"); int i = addBookBill(form); 34 List list = getBookBillList(form); form = (BookBillActionForm) list.iterator().next(); form.setPageStatus("update"); request.setAttribute("bookBill", form); request.setAttribute("bookbilldList", getBookBillDList(form.getBookBillNo())); }else if("bookBill.update".equals(handlingPath)){ //修改BookBill int i = updateBookBill(form); }else if("bookBill.delete".equals(handlingPath)){ //删除BookBill int i = deleteBookBill(form); form.setBookBillNo(null); List list = getBookBillList(form); request.setAttribute("bookBillList", list); form.setPageStatus("update"); }else if("bookBill.finishDetail".equals(handlingPath)){ String sql = "update "+schema+"bookBillInfo set bookBillstatus='已生效 ' " +"where bookBillNo='"+form.getBookBillNo()+"'"; executeForUpdate(sql); form.setBookBillNo(null); List list = getBookBillList(form); request.setAttribute("bookBillList", list); }else if("bookBill.finish".equals(handlingPath)){ String sql = "update "+schema+"bookBillInfo set bookBillstatus='已生效 ' " +"where bookBillNo='"+form.getBookBillNo()+"'"; executeForUpdate(sql); 35 List list = getBookBillList(form); form = (BookBillActionForm) list.iterator().next(); form.setPageStatus("update"); request.setAttribute("bookBill", form); request.setAttribute("bookbilldList", getBookBillDList(form.getBookBillNo())); }else if ("bookBill.query".equals(handlingPath)) { List list = getBookBillList(form); request.setAttribute("bookBillList", list); }else if ("bookBill.queryForUpdate".equals(handlingPath)) { List list = getBookBillList(form); form = (BookBillActionForm) list.iterator().next(); form.setPageStatus("update"); request.setAttribute("bookBill", form); request.setAttribute("bookbilldList", getBookBillDList(form.getBookBillNo())); }else if ("bookBill.addDetail".equals(handlingPath)) { String billAmount = request.getParameter("billAmount"); String itemNo = request.getParameter("itemNo"); String billPrice = request.getParameter("billPrice"); String bookBillDNo = getFlowCode("bookBillDNo", schema+"bookbillDInfo"); String sql = "INSERT INTO "+schema+"bookbillDInfo(bookBillDNo, itemNo, " +"bookBillNo, billAmount, billPrice)" + " VALUES('"+bookBillDNo+"','"+itemNo+"'" + ",'"+form.getBookBillNo()+"','"+billAmount+"','"+billPrice+"')"; executeForInsert(sql); 36 String minSql = "update "+schema +"itemInfo set amount=cast((cast(amount as int)-" +billAmount+") as varchar)"; executeForUpdate(minSql); List list = getBookBillList(form); form = (BookBillActionForm) list.iterator().next(); form.setPageStatus("update"); request.setAttribute("bookBill", form); request.setAttribute("bookbilldList", getBookBillDList(form.getBookBillNo())); }else if ("bookBill.delDetail".equals(handlingPath)) { String bookBillDNo = request.getParameter("bookBillDNo"); String sql = "delete from "+schema+"bookbillDInfo where bookBillDNo='"+bookBillDNo+"'"; executeForDelete(sql); List list = getBookBillList(form); form = (BookBillActionForm) list.iterator().next(); form.setPageStatus("update"); request.setAttribute("bookBill", form); request.setAttribute("bookbilldList", getBookBillDList(form.getBookBillNo())); }else if ("bookBill.bookBillFinishList".equals(handlingPath)) { List list = getBookBillFinishList(form); request.setAttribute("bookBillList", list); }else if ("bookBill.doSend".equals(handlingPath)) { String sql = "update "+schema+"bookBillInfo set bookBillstatus='交 货' " +"where bookBillNo='"+form.getBookBillNo()+"'"; 37 executeForUpdate(sql); UserActionFormuser=(UserActionForm)request.getSession().getAttribute("currentUser"); String moneyNo = getFlowCode("moneyNo",schema+"moneyInfo"); String moneyAmount = ""; String sumSql = "select cast(cast(billAmount as int)*cast(billPrice as int) as varchar)"+"sum from "+schema+"bookbillDInfo where bookBillNo='"+form.getBookBillNo()+"'"; List sumList = executeForQuery(sumSql, null); moneyAmount=(String)((HashMap)sumList.iterator().next()).get("sum"); String insert= "INSERT INTO "+schema+"moneyInfo(userName, bookBillNo, moneyNo, moneyStatus,"+" moneyCreateTime, moneyFinishTime, moneyAmount)" +" VALUES('"+user.getUserName()+"','"+form.getBookBillNo()+"'," + "'"+moneyNo+"','未付款',getDate(),'','"+moneyAmount+"')"; executeForInsert(insert); form.setBookBillNo(null); form.setUserName(null); form.setFactoryName(null); List list = getBookBillFinishList(form); request.setAttribute("bookBillList", list); } return returnStr; } } 验证用户信息模块主要代码如下: 38 public class UserDAO extends BaseDAO { /** * 请求的入口,相当于业务处理类 * @param handlingPath 请求路径的标识 * @param actionform 本次action请求对应的actionform * @param request HttpServletRequest * @return */ public String services(String handlingPath, ActionForm actionform, HttpServletRequest request) throws DAOException{ UserActionForm form = (UserActionForm) actionform; String returnStr = FrontAction.SUCESS; String schema = tableName; if(tableName.indexOf(".")!=-1){ schema = schema.substring(0, schema.lastIndexOf(".")+1); }else{ schema = ""; } if("user.add".equals(handlingPath)){ UserActionForm f = new UserActionForm(); f.setUserName(form.getUserName()); List list = getUserList(f); if(list!=null&&list.size()>0){ request.setAttribute("Error","该用户名称已经存在,请重新选择一个用户名称!"); returnStr = "fail"; }else{ 39 // 新增Param int i = addUser(form); form.setPageStatus("update"); request.getSession().setAttribute("currentUser", form); } }else if("user.update".equals(handlingPath)){ //修改User int i = updateUser(form); }else if("user.delete".equals(handlingPath)){ //删除User int i = deleteUser(form); form.setUserName(null); List list = getUserList(form); request.setAttribute("userList", list); }else if ("user.query".equals(handlingPath)) { List list = getUserList(form); request.setAttribute("userList", list); }else if ("user.queryForUpdate".equals(handlingPath)) { List list = getUserList(form); form = (UserActionForm) list.iterator().next(); form.setPageStatus("update"); request.setAttribute("user", form); }else if ("user.login".equals(handlingPath)) { List list = getUserList(form); if(list==null||list.size()==0){ returnStr = "fail"; request.setAttribute("Error","用户名或者密码错误,请重新 40 输入!"); }else{ request.getSession().setAttribute("currentUser", list.iterator().next()); } }else if ("user.logout".equals(handlingPath)) { request.getSession().removeAttribute("currentUser"); } return returnStr; } /** * 根据form进行新增操作 * @param actionform * @return */ public int addUser(UserActionForm actionform) throws DAOException{ //拼装查询的SQL String sql = getSQLGenerator().generatorSql(actionform, "insert",tableName,keyColumn); return getJdbcTemplate().update(sql); } /** * 根据form进行修改操作 * @param actionform * @return */ public int updateUser(UserActionForm actionform) throws DAOException{ 41 //拼装查询的SQL String sql = getSQLGenerator().generatorSql(actionform, "update",tableName,keyColumn); return getJdbcTemplate().update(sql); } /** * 根据sql进行修改操作 * @param actionform * @return */ public int updateUser(String sql){ return getJdbcTemplate().update(sql); } /** * 根据form进行删除操作 * @param actionform * @return */ public int deleteUser(UserActionForm actionform) throws DAOException{ //拼装查询的SQL String sql = getSQLGenerator().generatorSql(actionform, "delete",tableName,keyColumn); return getJdbcTemplate().update(sql); } /** * 根据sql进行删除操作 42 * @param actionform * @return */ public int deleteUser(String sql){ return getJdbcTemplate().update(sql); } /** * 简单的单表查询,根据form中的filed组装查询SQL * @param actionform 制定查询的user * @return */ public List getUserList(UserActionForm actionform){ List list = null; //拼装查询的SQL String sql = getSQLGenerator().generatorSql(actionform, "select",tableName,keyColumn); //如果actionform不为空,则进行单条 记录 混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载 的查询,getId根据具体 的情况调节 if(actionform!=null){ if(actionform.getUserName()!=null&&!"".equals(actionform.getUserNa me())){ sql += " AND "+keyColumn+"='"+actionform.getUserName()+"'"; }if(actionform.getPassword()!=null&&!"".equals(actionform.getPasswor d())){ sql += " AND password='"+actionform.getPassword()+"'"; } 43 } list = executeForQuery(sql, UserActionForm.class); return list; } public List getUserList(String sql){ //Query List list = executeForQuery(sql, UserActionForm.class); return list; } } 44
本文档为【玩具超市管理系统&#40;JAVA&#41;毕业设计说明书】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_014457
暂无简介~
格式:doc
大小:184KB
软件:Word
页数:47
分类:互联网
上传时间:2017-09-16
浏览量:125