商场收银管理系统.doc_第1页
商场收银管理系统.doc_第2页
商场收银管理系统.doc_第3页
商场收银管理系统.doc_第4页
商场收银管理系统.doc_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本科生毕业设计题 目: 商场收银管理系统 姓 名: 储吉 系 别: 信息科学系 专 业: 计算机科学与技术(物联网)年 级 、学 号: 10物联网 108325160 指 导 教 师: 王小林 江苏师范大学科文学院教务部印制目 录第1章 绪论11.1研究的背景11.2 研究的概况11.3 研究的目的和意义11.4 课题的研究途径21.5本文研究内容及主要贡献2第2章 系统相关理论32.1 开发环境32.2 JSP介绍32.3 xHTML+CSS模式32.4 Oracle及MySql简介32.5 JDBC简介42.6本章小结4第3章 商场收银管理系统分析43.1 需求分析53.1.1功能需求53.1.2性能需求53.2 系统的可行性分析63.2.1技术可行性63.2.2 经济可行性73.2.3 操作可行性73.2.4 社会可行性73.3本章小结7第4章 总体设计84.1 系统项目规划8 4.2 数据库设计与实现94.3本章小结11第5章 系统功能模块设计125.1系统界面的设计实现125.2用户登录模块的实现135.2.1用户的信息注册135.2.2用户登录验证155.3欢迎界面音乐播放功能的实现175.4“TOP”标题栏显示模块的功能实现175.5仓库管理员模块功能实现185.5.1 商品入库、出库205.5.2 新增商品215.5.3 查询全部商品245.5.4 按编号查询255.5.5 退出系统265.6收银员模块功能实现265.6.1 扫描商品265.6.2 修改数量275.6.3 结账285.7本章小结31第6章 商场收银管理系统软件测试326.1注册、登录功能测试326.2商品的入库、出库等操作功能测试326.3新增商品功能模块的测试326.4收银功能模块的测试326.5本章小结32第7章 总结与展望337.1 总结337.2展望33毕业设计体会34致 谢35参考文献3639第1章 绪论1.1研究的背景计算机与网络作为人类社会的“第三次工业革命”,它的迅速发展与兴起,使得计算机网络已经深入到了人们生活的各行各业,家家户户。随着网络技术的不断扩大和发展,它已经渗入了人们生活的方方面面,上班、休闲、聊天、然门无时无刻不在使用计算机,它使“地球村”变成了真实写照。21世纪是个处于信息浪尖的时代,计算机技术与网络的发展风靡为各行各业乃至世界创造了一个崭新的时代平台背景人们生活工作的方方面面已经越来越离不开计算机的应用与辅助,而随着计算机网络的提速发展,人们更多地需要在这个大而智能的平台上交流讨论生活中的各种问题。1.2 研究的概况 商场收银管理系统归属于管理信息系统(Management Information System)简称MIS,MIS作为一个不断发展的新学、科新领域已经渗透至人们生活工作的方方面面,它是需要人应用计算机设备或其他信息处理手段组成的典型用例。商场收银管理系统是MIS中最为典型的系统用例,它开发的内容主要囊括前端应用程序的开发、界面的创建、后台数据库的建立和维护、数据库与程序关联操作等几大方面。对于数据库的建立,我们要求保证数据一致性和完整性、安全级别高。而对于前端界面之类的操作则要求管理系统的操作界面友好、功能完善、简单易用等。1.3 研究的目的和意义 研究商场收银管理系统是为了通过对本课题的整体设计与功能实现,熟悉并掌握整个开发流程和应用原理,在之后的程序开发中能够很好地应用到这些理念思想。对于面临毕业的计算机专业学生来说,研究并应用面向对象设计方法与JSP开发平台是益处颇多,经历本次设计与开发我们能够积累实际经验,以后步入工作岗位能够快速地适应工作节奏与工作要求,这正是本次设计的根本目的所在。本系统主要的几大模块是收银结账、商品信息管理等相关功能的操作,每一项功能操作都能准确快速地响应到数据库,当用户需要对商品的增删改查时数据库能有快速的执行响应。查询功能是商品信息相关操作比较重要的方面,系统主要根据商品名称和商品编号来查询商品的基本信息,这样操作可以简单便捷地查询找到数据库中商品的基本信息。商场收银管理系统有完整准确的用户注册、登录和登录时验证等功能,系统采用当前流行,安全性能卓越的开发工具Oracle和MySql两种数据库,两者数据库结构灵活,能很好地支持系统相关操作。本系统旨在服务超市收费管理人员, 其目标是方便工作人员对商场库存商品的基本信息进行分类管理,以财务收银结算为中心,运用系统的友好操作界面,对商场商品进行全面、细致、规范的管理,实时展现商场的运营状况,为管理和收银人员提供科学、准确、便捷明了的数据。1.4 课题的研究途径课题研究首先查阅相关书籍、视频、论文等资料掌握设计的理论基础;明确课题的需求与所要实现的功能,依次构建系统模块与架构;然后熟练运用前端JSP平台开发和后台数据库相关操作的技能,以系统的需求分析为参照点,先简后繁、循序渐进地完善系统相关功能。设计之初完成对系统的功能需求,然后实现功能的逐步完善,接着能够体现自己的特色化设计,最终随着系统的设计与功能完成,我们也要进入调试运行与后期的维护等阶段。1.5本文研究内容及主要贡献 本文主要研究商场收银管理系统的开发实现与实际应用,在设计之初经由市场调查的分析得出整个系统的需求分析,明确研究目的与系统的设计目标。经过设计分析,本系统研究基于JAVA开发平台的操作系统,并且连接数据库实现数据的相关操作。通过本系统的应用,操作人员能够对商场的商品信息及相关功能能够统一有效地管理操作。系统同时为操作人员提供了资源有效整合、简便快捷的服务平台。 第2章 系统相关理论商场收银管理系统是以JSP(Java Server Pages)开发平台为基础,结合后台多灵活性的数据库(Oracle和MySql)设计实现的。其中运用了众多当下主流的技术,包括B/S(浏览器/服务器)架构模式、通过JDBC对数据库进行操作、面向对象、DIV+CSS、JavaScript动态网页制作等相关技术。2.1 开发环境 本系统主要实现对商场商品简单的管理,包括增添商品,结账收银,商品查询和修改商品信息四个方面。系统可以完成对各类信息的浏览、查询、添加、删除、修改等功能。整个系统是基于JSP平台开发而成,前台静态网页通过HTML脚本语言、DIV+CSS模式实现,动态页面的实现依靠JavaScript、EL、JSTL等语言实现,数据库可以和安全级别最高的Oracle和简单便捷的MySQL相联,数据库容器使用阿帕奇公司TomCat,通过JDBC技术对数据库进行简单地增删改查等简单操作。2.2 JSP介绍 “一种基于JAVA语言的动态网页标准,JSP技术类似于ASP技术,在传统的静态页(HTML)中既可以插入JAVA语句还可以融入JavaScript执行语句,同时JSP具有跨平台性,即可在windows操作系统运行,同时能在其他操作系统(如Linux)运行。” 2.3 xHTML+CSS模式 DIV+CSS是网站标准(Web标准)中常用术语之一,是一种网页布局方法,有别于传统的HTML网页设计中的表格(table)定位方式,可实现网页页面内容与表现相分离,这种方法避免了代码的大量冗余,可读性,操作性都有很大的提高。 CSS:(Cascading Style Sheets)层叠样式表单,是用来表示HTML或者xHTML等文件式样的计算机语言。2.4 Oracle及MySql简介 Oracle:Oeacle RDBMS,是甲骨文公司的一款关系数据库管理系统,是目前市场上安全级别最高,占有量最大的数据库系统,Oracle Server 是一对一关系数据库管理系统,它提供开放的、全面的、和集成的信息管理方法。MySql:是一个小型关系型数据库管理系统,被广泛运用于中小型网站中。具有体积小,速度快,总体拥有成本低等特点,另外代码为开源是其最大特色。2.5 JDBC简介Java Data Base Connectivity简称为JDBC,是Java数据库连接的工具,用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一种用Java语言编写的类和借口组成。2.6本章小结本章节主要对商场收银管理系统相关的应用理论进行解释,该过程主要在系统设计之初进行,需要通过大量的资料文献的积累,来完善设计所需的技术要求与功能实现。以上都是商场收银管理系统所要运用的关键技术,因此在本章一一作出详细的解释(部分摘录书籍、文献)。第3章 商场收银管理系统分析3.1 需求分析 3.1.1功能需求商场收银管理系统的设计任务是开发一款小型的商场收银管理系统,整个系统要求操作简便、具有有好的界面,能方便地分类管理商品简单地对商品信息处理;收银操作简便,商品信息查询快捷,对于整个系统的稳定性与数据库的安全性都有较高的安全性。经过前期对商场收银管理系统相关业务需求的的调查分析,我们得出该系统的基本功能需求如下所示:本系统(商场收银管理系统)需要对库存商品的基本信息进行管理和统计;要求系统能够根据用户的需求对商品基本信息、出库入库的数量及相关信息进行查询,并能提示用户商品存量不足或者不存在此类商品等警示信息;系统能够对用户身份进行有效验证,以便用户对系统权限有合理的分配,具体有用户注册、用户登录、注销登录、重写基本信息等功能;系统提供收银结账、对数据库商品信息的增删改查等基本功能。接下来我们需要对功能需求进行具体的分类:系统整体的操作界面、仓库管理员操作模块、收银员操作模块以及商品基本信息操作模块。除去上述功能模块,本系统还需要其他的功能如:系统具有友好、简洁、美观的前端操作界面,并且提供背景音乐播放的功能。系统能够支持多用户操作,具有较好的操作权限分配。商品基本信息的增删改查等基本操作要快速、准确。商品存储在数据库有唯一的主键、自增编号。商品基本信息的查询浏览能够快速全面。 3.1.2性能需求 要求本系统拥有良好的鲁棒性,不存在一些逻辑性错误。后台使用的数据库具有备份机制以防数据损毁或者丢失。存储的数据要求精确、明了、易操作。对数据库简单地增、删、改、查等操作要求迅速,简便。在响应用户请求时,系统应该保证所要操作的数据是具体的、全面的、准确的。为了适应用户的高效率要求,系统的响应时间和操作速率都得迅捷。当系统与外接设备交互(如打印机、扫描仪)使用时,响应时间相对较长,但应在理论接受范围之内。 经多台PC机的调查实验,以下给出基本的运行需求:硬件需求:处理器(CPU):Pentium 或以上、CMD羿龙及以上;;硬盘:320GB或以上;内存要求:512MB 或以上。软件需求:操作系统:Windows XP及以上版本、Linux操作系统;数据库系统:Oracle数据库或者MySQL数据库系统;开发语言:JAVA、JSP、SQL;开发工具:MyEclipse10、PLSQL、MySQL-Front、Dreamweaver CS5。3.2 系统的可行性分析设计开发一个商场收银管理的系统,会有现实资源与客观原因的限制。因此,在设计之初,我们需要根据用户提供的功能需求以及现实的资源条件进行可行性的分析,以减少项目开发风险,避免人力、物力和财力的浪费。该系统系统采用了面向对象思想的JAVA语言,JSP平台开发目前在市场上占据主导地位,java语言安全性比较高。 3.2.1技术可行性 本系统以MyEclipse为开发平台,使用JSP动态网页技术。MyEclipse是当前最为主流的JAVA 语言开发平台,后台连接了目前主流的Oracle数据库与简便快速的MySql数据库,Oracle数据库系统具有安全级别高,准确性稳定性好,并且处理数据库量大,效率高等特点;MySql数据库系统具有占用内存小,成本低,速率快等特点。两大数据库都提供了比较完善控制语句与操作指令、丰富的数据类型以及稳定的支持性,为系统的高要求开发提供了比较有力的保障,代码的模块化有较高保障。 在硬件配置方面,本系统对处理器(CPU)和PC机内存的不是太高,如今主流计算机都可以正常运行。 综上所述,本系统在技术设计和硬件配置方面来看都是具有可实施性。,因此,它在技术上是可行的。 3.2.2 经济可行性 本系统旨在提高了提高效率,减少成本。商场有经济能力承担系统的需求成本以及运行维护成本。本系统将商品信息管理与收银管理进行了整合,使得管理工作有了本质性的提升,主要包括有以下几方面:第一,商场收银管理系统的应用可以省去一一部分繁杂的人力劳动力;第二,本系统的运行可以节省诸多资源;第三,本系统的运行可以有效改善工作效率。因此,本系统在经济上是可行的。 3.2.3 操作可行性 系统的相关操作与管理只需懂得计算机基础操作即可,工作人员稍加解释便可熟练使用操作。系统界面相当简单、直观。因此,系统具有操作可行性。 3.2.4 社会可行性 本系统为商场的管理、结账收银以及广大顾客提供了便利,具有社会可行性。3.3本章小结本章主要是对商场收银管理系统的功能需求以及可行性进行比较全面深入的分析。在功能需求方面主要分功能要求与性能要求两个模块;而可行性分析从技术可行性、操作可行性、社会可行性、经济可行性等几个大块进行论述研究,最终得出结果:系统满足功能需求以及可行性的要求。第4章 总体设计经过了对商场收银管理系统的需求分析以及可行性分析,可将用户分为两大操作模块,分别为仓库管理员和收银员,接下来需要以需求分析为基准进行系统的总体设计。 4.1 系统项目规划商场收银管理系统是典型的数据库联接与数据库应用的程序,它由用户注册登陆、登录验证、仓库管理员操作模块、收银员操作模块以及商品信息管理模块等组成。具体功能模块如下:q 用户注册登录模块该模块主要实现用户注册、用户登陆、登录验证、身份识别、管理权限操作等功能。q 商品入库模块商品入库模块主要实现管理商场商品基本信息的入库、查询编号、新商品添加等功能。q 商品出库模块商品出库模块主要实现商场商品的数量与数据库同步的功能。q 仓库管理员操作模块库存管理员模块主要实现对库存商品的管理与统计以及相应的增删改查等功能。q 收银结账模块收银结账模块主要实现与购买商品的价格计算等功能。(1)根据项目规划,前台模块功能示意图,如图4.1所示。图4.1前台功能模块示意图 商品入库 商场收银管理系统登录 商品库存管理 收银管理 商品出库 新增商品 查询全部商品按编号查询商品 扫描商品 修改商品数量结账 (2)根据项目规划,后台模块功能示意表,如表4.1所示。 表4.1 后台功能模块示意表模块编号模块名称功能描述1登录主要提供用户登录功能2商品库存管理主要是提供商品入库、出库、新增和查询商品功能3收银管理主要是提供扫描商品、修改购买数量和结账功能 4.2 数据库设计与实现根据以上的分析,系统中的实体主要是有用户信息、商品信息、商品入库信息、收银结账等,在数据库中创建的表有:用户表(supermarket_users)、商品信息表(supermarket_goodslist)、商品分类子表(supermarket_goodtype)。 商场收银管理系统采用Oracle和MySql两种各有特色的数据库,系统的数据库名为“supermarket”。数据库“supermarket”中包含3个主表。各个数据表的结构如下所示。(1)用户的基本信息表(supermarket_users) 用户基本信息表用来验证在注册或者登录时用户的身份,以此获得相应操作权限。用户的基本信息表结构如表4.2所示。表4.2 用户信息表结构 表字段名 数据类型 字段的大小 是否是主键 相关描述简介User_id int11是用户的ID,主键,自增Login_nameVar char30否用户登录名,不为空Login_passVar char20否用户登录密码,不为空True_nameVar char50否用户登录真实姓名,不为空User_type int11否用户身份类型,“1”代表仓库管理员,“0”代表收银员(2)商品基本信息表(supermarket_goodslist) 商品基本信息表用来保存仓库出入商品的基本信息以及可供增删改查等基本操作的相关属性。商品基本信息表结构如表4.3所示。表4.3 商品信息表结构 表字段名 数据类型字段的大小 是否是主键 相关描述简介Goods_id int 11是商品的编号,主键,自增Goods_nameVar char 100否商品名称,不为空Goods_pricedecimal (8,2)否商品价格,不为空Goods_unitVar char 20否商品的单位,不为空quantity int 11否商品的数量,不为空Goods_picVar char 500否商品的图片示例Type_id int 11否商品类型编号,外键 (3)商品分类子表(supermarket_goodtype) 商品分类子表用来保存分类商品在库存中的基本信息,它们根据设置的外键与商品主表进行关联操作。商品分类子表如4.4所示。表4.4 商品分类子表结构 表字段名数据类型 字段的大小 是否是主键 相关描述简介Type_id int 11是商品类型编号,自增,主键Type_nameVar char 20否商品所属类型,不为空Type_decVar char 100否商品类型的相关描述4.3本章小结 商场收银管理系统的总体设计是依据设计初期制定的需求分析构建的,通过需求分析对系统基本功能有个大概的框架,然后逐渐地对功能完善。总体设计从前台的操作界面以及后台数据库应用两大方面着手。通过对商场收银管理系统的总体设计,系统的功能完善与运行优化才能有效,高效。第5章 系统功能模块设计 经过对系统的总体设计,接下来需要对商场收银管理系统的各个模块的功能进行具体分析与实现,以需求分析中的功能目的为参照,能够方便准确地响应用户的功能需求。5.1系统界面的设计实现 主窗体是系统的控制中心,其他模块都通过主窗体来跳转调用,因此主窗体需要有简单、美观、友好的操作界面,商场收银管理系统运行界面如图5.1所示。 图5.1 商场收银管理系统运行界面 实现该界面,我们先用DreamWeaver CS5制作一个静态页面,包含”欢迎使用商场收银管理系统”标题,标题以下是下划线标签,然后以下主面板由两个输入文本框,三个按钮组成,接着关联CSS样式表进行简单的美化,最后将编辑好的HTML静态网页改成JSP格式。界面关键代码如下所示: 网页编辑的代码如下:欢迎使用商场收银管理系统登录名:登录密码: 关联CSS相关代码:/* CSS Document */h1 text-align:centerh2text-align:centerformfont-size:12px.inputTextborder:1px #0066FF solid;width:200px;height:20px;line-height:20px;div.welcomefont-size:12px;color: #000;font-weight:bold;5.2用户登录模块的实现首先用户进行注册信息的填写,注册数据发送至数据库,然后执行登录操作,系统接收客户端输入的用户名和密码,发送到服务器端验证,根据验证结果显示信息,如果是库存管理员系统进入库存管理员的操作界面,如果验证身份是收银员,系统则将进入收银员的操作界面。 5.2.1用户的信息注册用户需要填写的信息主要有登录名、登录密码、确认密码、真实姓名、选择登陆身份等。商场收银管理系统的注册界面如图5.2所示: 5.2 商场收银管理系统个人信息注册界面 在文本框内输入的个人信息将会存储在数据库中,以便以后登录时查询验证。选择登陆身份默认是选择仓库管理员,用户的身份在数据库中以“1”和“0”来表示,“1”表示仓库管理员,而“0”则表示收银员身份。个人信息注册关键代码如下所示: 注册登陆等功能实现代码:/*取出用户提交的注册信息*/String loginName=request.getParameter(loginName);/接收用户输入的登录名 StringloginPass=request.getParameter(loginPass);/接收用户输入的登录密码 String trueName=request.getParameter(trueName);/接收用户输入的真实姓名Int userType=Integer.parseInt(request.getParameter(userType);/将提交的数据封装成对象Users user=new Users();/user.setId(id)user.setLoginName(loginName);user.setLoginPass(loginPass);user.setTrueName(trueName);user.setUserType(userType);/调用业务方法,完成注册操作UsersBiz usersBiz=new UsersBizImpl();boolean result=usersBiz.register(user);if(result)session.setAttribute(user, user);out.println();out.println(alert(注册成功!将为您跳转至主页!););/提示用户注册成功out.println(window.location=SuperMarketMain.jsp);out.println();elseout.println();out.println(alert(用户注册失败!););/提示用户注册失败,重新注册。out.println(window.location=register.jsp);out.println();5.2.2用户登录验证如果用户注册成功或者在数据库中有该用户信息,都可以登录商场收银管理系统,系统会根据用户输入的用户名和密码和数据库进行比对,验证其登陆成功与否,如果登陆成功,系统则会根据数据库中的用户类型显示该用户的身份,并跳转至不同权限的操作界面。如果是仓库管理员,系统则将跳转至管理员的操作界面,并且在系统上方显示身份以及时间;如果是收银员,系统会跳至收银员界面,同样在上方显示用户身份和时间。商场收银管理系统的登陆界面如图5.3所示:图5.3 商场收银管理系统的登陆界面 关键验证代码如下: /首先获得登录名和密码String loginName=request.getParameter(loginName);/接收用户输入的登录名 String loginPass=request.getParameter(loginPass);/接收用户输入的登录密码 /创建业务对象的实例UsersBiz usersBiz=new UsersBizImpl();Users user=usersBiz.login(loginName);if(user=null)/判断用户的登陆名在数据库中是否有记录out.println();out.println(alert(登录名不存在,请检查!););/没有查询到用户名提示信息out.println(window.location=SuperMarketLogin.jsp);out.println();else/登录名存在,继续判断密码if(user.getLoginPass().equals(loginPass)/登陆成功/将登陆成功的用户对象,保存到Sessionsession.setAttribute(user, user);out.println();out.println(alert(欢迎光临:+user.getTrueName()+!););out.println(window.location=SuperMarketMain.jsp);out.println();elseout.println();out.println(alert(对不起!密码错误!););/提示密码错误信息out.println(window.location=SuperMarketLogin.jsp);out.println();5.3欢迎界面音乐播放功能的实现作为本系统特色化功能设计,为用户提供轻松愉快的氛围是理所应当 的,因此本系统为仓库管理员和收银员操作主界面插入了背景音乐,其实现相对简单,带来的益处确实相当大的。其中背景音乐属性loop=“-1”代表了单曲循环,volume代表歌曲播放的音量。欢迎界面音乐播放的关键代码如下所示:5.4“TOP”标题栏显示模块的功能实现标题栏作为界面显示的重要组成部分,起着装饰醒目的作用,本系统的标题栏不仅设置有固定的欢迎语,还设计增添了身份提示,时间显示等实用功能。当用户以仓库管理员的身份登录时,在“TOP”栏左下角会显示仓库管理员的身份,同时显示本地时间;同样用户以收银员的身份登录到界面,系统会给出收银员身份的欢迎词。 仓库管理员操作界面标题栏显示如图5.4所示:图5.4 商场收银管理系统仓库管理员界面标题栏显示收银员操作界面标题栏显示如图5.5所示:图5.5 商场收银管理系统仓库管理员界面标题栏显示 标题栏显示功能的关键代码如下所示:欢迎使用商场收银管理系统 欢迎您: $user.trueName   您现在的身份是: $user.userType=1?仓库管理员:收银员   现在时间是:     注销 5.5仓库管理员模块功能实现仓库管理员在本系统中以类型type_id=“1”存储在数据库中,系统分配给仓库管理员的权限有:商品的入库、商品的出库、新增商品、查看商品列表、按编号查询商品以及退出系统等操作选项。设计仓库管理员操作面板需要运用到网页板块设计的设计、等标签语言,将一个网页分为上、左、中三个板块进行编辑。“上”即以上5.4中提到的TOP标题栏显示的内容;“左”则需要显示仓库管理员所要操作的选项,运用列表中、等标签语言;“中”则是显示仓库管理员所要操作的功能主界面,以及在中间的主面板完成各种功能的操作。仓库管理员操作主界面如图5.6所示:图5.6 仓库管理员操作主界面仓库管理员操作界面的关键代码如下所示: 5.5.1 商品入库、出库 1.接收客户端输入的商品编号或者商品名称,发送到服务器端验证是否有此商品。 2.如果有此商品,则提示输入入库或者出库数量,接收客户端输入的数量,发送到服务器端并增加或减少此商品在数据库中对应的库存数量,然后返回客户端提示用户入库、出库成功信息。 3.入库、出库成功后,能够显示库存商品的商品编号、商品名称、商品价格、商品单位、商品数量等基本信息。 4.如果没有此商品,入库操作则在客户端提示“库存中未查询到此商品,请选择新增商品!”, 新增完成后,提示操作成功,然后显示所有商品信息;出库操作如果没有此商品,则在客户端提示无此商品,重新提示输入商品编号。 商品的入库、出库操作如图5.7至5.8所示: 图5.7商场收银管理系统商品入库操作界面 图5.8 商场收银管理系统商品出库操作界面 商品入库关键代码如下所示:request.setCharacterEncoding(utf-8); /将请求编码进行设置/调用业务方法,完成数据库插入操作 Goods good = new Goods();GoodsBiz goodsBiz = new GoodsBizImpl();boolean result = goodsBiz.addGoods(good);int num=good.getQuantity();if (result) out.println();out.println(alert(商品入库成功!););out.println(window.location=SuperMarket_GoodsList.jsp);out.println(); else out.println();out.println(alert(商品入库失败!););out.println(window.location=SuperMarket_NewGoods.jsp);out.println(); 5.5.2 新增商品1.客户端输入商品编号或者商品名称、商品价格、商品单位、商品数量、以及商品示例图片等基本信息。服务器接收数据并验证输入的信息是否符合要求。2.如果数据库中没有此类商品,并且输入的商品信息符合要求,系统提示新增商品成功信息;反之,数据库有同名产品或者输入的信息有误都会导致商品添加的失败,系统提示“新增商品失败,请重新输入!”信息。3.本系统在该功能添加了特色化的功能:可上传商品的相关图片,以便更直观明了的了解到商品信息。商场收银管理系统新增商品模块如图5.9所示:图5.9商场收银管理系统新增商品界面新增商品功能实现关键代码如下所示:request.setCharacterEncoding(utf-8); /将请求编码进行设置/获得保存上传图片的路径String savePath = request.getSession().getServletContext().getRealPath(/image);FileItemFactory factory = new DiskFileItemFactory();ServletFileUpload fileUpload = new ServletFileUpload(factory);List items = fileUpload.parseRequest(request);Iterator it = items.iterator();Goods good = new Goods();while (it.hasNext() FileItem item = it.next();if (item.isFormField() if (item.getFieldName().equals(goodsName) String value = item.getString(utf-8);good.setGoodName(value);if (item.getFieldName().equals(price) String value = item.getString(utf-8);good.setPrice(Double.parseDouble(value);if (item.getFieldName().equals(unit) String value = item.getString(utf-8);good.setUnit(value);if (item.getFieldName().equals(quantity) String value = item.getString(utf-8);good.setQuantity(Integer.parseInt(value); else String filePath = item.getName(); /获得选取的文件名,此处为完整路径File nameFile = new File(filePath);File myfile = new File(savePath, nameFile.getName();item.write(myfile);good.setPic(/image/ + nameFile.getName();/调用业务方法,完成数据库插入操作GoodsBiz goodsBiz = new GoodsBizImpl();boolean result = goodsBiz.addGoods(good);if (result) out.println();out.println(alert(商品录入成功!););out.println(window.location=SuperMarket_GoodsList.jsp);out.println(); else out.println();out.println(alert(商品录入失败!););out.println(window.location=SuperMarket_AddGoods.jsp);out.println(); 5.5.3 查询全部商品 接收用户要求,发送到服务器端查询全部商品,返回客户端全部库存商品的信息,显示全部库存商品的商品编号、商品名称、商品价格、商品单位、商品数量。查询商品功能如图5.10所示: 图5.10 商场收银管理系统所有商品信息列表 功能实现关键代码如下所示:$g.id$g.goodName$g.price$g.unit$g.quantity$g.pic 5.5.4 按编号查询接收客户端输入的商品编号,发送到服务器端验证是否有此商品,如果有此商品,则返回客户端此商品信息,显示此商品的商品编号、商品名称、商品价格、商品单位、商品数量。如果没有此商品,系统提示“未查询到此商品”。界面如图5.11所示:图5.11 商场收银管理系统 按编号查询界面显示 关键代码如下所示:public List findDoods() List list = new ArrayList();String sql = SELECT * FROM supermarket_goodslist WHERE id=?;ResultSet rs = this.query(sql, null);try while (rs.next() Goods good = new Goods();good.setId(rs.getInt(1);good.setGoodName(rs.getString(2);good.setPrice(rs.getDouble(3);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论