




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本科生毕业设计 题 目 基于JavaWeb技术的超市管理系统的设计与实现 姓 名 琪 学 号 4 院 系 系 专业 信息与计算科学 学 指导教师 智 2016 年 12月 教务处制本科生毕业设计声明本人郑重声明:所呈交的毕业设计,是本人在指导教师指导下,进行研究工作所取得的成果.除文中已经注明引用的内容外,本设计的研究成果不包含任何他人创作的、已公开发表或没有公开发表的作品内容.对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确方式标明.本设计创作声明的法律责任由本人承担. 作者签名: 2016年 月 日 本人声明:该毕业设计是本人指导学生完成的研究成果,已经审阅过毕业设计的全部内容,保证题目、关键词、摘要部分中英文内容的一致性和准确性,并通过一定检测手段保证毕业设计未发现违背学术道德诚信的不端行为. 指导教师签名: 年 月 日目 录1绪论11.1设计背景11.2目的和意义11.3开发工具及技术12需求分析22.1需求调研22.2可行性分析22.3系统用户用例图32.4功能模块需求分析32.5设计的基本思想42.6界面需求43系统分析与设计43.1数据库的分析与设计44系统功能实现64.1系统登陆页面实现64.2系统首页设计74.3商品管理模块84.4采购入库管理.94.5商品分类管理104.6安全退出系统115系统测试115.1系统测试目的与意义115.2测试过程125.3其他错误126结 论12参考文献14致 谢15附 录16内容摘要:随着现代科技发展的飞速,已与人们的生活紧密的联系到一起.许多的企业,不论大小,都充分的意识到以前传统的手工操作已经赶不上市场的需要和发展,为了满足社会的需要,为了提高各自的经济效益,纷纷开发自己的系统. 通过超市管理系统这个平台,可以使工作人员从繁杂的数据查询和统计中解脱出来,既减少工作量,又可以提高工作效率.系统的主要功能包括:掌握超市所有员工的信息,所有商品的信息,商品的出库入库等.此系统分为前台和后台,前台主要采用JSP,后台用MyEclipse结合数据库MySQL以Tomcat作为服务器,开发一个基于B/S结构的JavaWeb技术的超市管理系统.关 键 词:JavaWeb JSP B/S结构全套设计加扣3012250582 Abstract:With the rapid development of technology, all kinds of management systems have been applied to each field of the society. Various size enterprises regardless of size, are fully aware of the traditional manual management mode has not adapted to the development of the times, in order to better development, in development for the management system.Through this platform, the supermarket inventory management system, can achieve the supermarket inventory management informatization, network, systematic, standardized, so that the work of personnel free out from the complex data query and statistics, reduce the workload. The main functions of the system include: the classification of goods management, goods management and so on. The front of the system using JSP as the development language,the development environment is MyEclipse, the server using tomcat, developed a supermarket inventory management system based on B/S structure of Web technology. Key words: JavaWeb JSP B/S structure1绪论1.1设计背景 在这信息网络技术飞速发展的今天,给我们的生活带来了巨大的改变.信息技术的日益发展已深入到社会的每个角落,许多企业,都充分意识到传统的手工管理模式已经过时,不能适应时代的发展,因此,纷纷开发适合自己的管理系统.以前管理大多为手工管理,这样会出现很多的弊端,例如,效率低、易出错,而且耗费大量的人力,物力及财力.他们希望有一个能够实现便于管理整个超市的各种功能的系统.通过此系统,可以使管理者很方便的掌握整个超市的人员信息以及商品的各种信息,这样不但能提高工作效率,也能使超市的库存方便快速的展现出来,对商品的关键数据也能方便的统计出结果. 1.2目的和意义长期以来,超市都是人工方式来记录商品的信息,并且管理人员对于自己的员工也没有一个全方面了解,这样一来,在出现问题的时候,不能及时准确的找到相应的处理人员,这样不但容易出错,还降低了工作效率.对于规模小的企业还可以勉强接受,但对于规模大一点的企业来说,无疑是很麻烦的.为满足企业发展需求,决定采用多种编程语言来开发了基于JavaWeb的超市管理系统,超市管理系统是涉及信息科学、数据计算和计算机技术的复杂的人机交互系统.通过这个系统可以随时查找到管理人员所想找到的信息,为超市管理带来了便利.1.3开发工具及技术1.3.1 开发工具本次设计,主要是使用MyEclipse结合Tomcat服务器来实现后台的程序运转,前台页面主要运用JSP技术来实现.下面对开发所运用到的工具及技术进行简要介绍.MyEclipse,是一个用于开发Java,J2EE,并且功能强大,支持的也很广泛的Eclipse插件集合.它的集成开发环境很丰富,包括了许多完备的功能,例如,编码、调试、测试等,对于HTML,JSP,CSS,Javascript等也有完整的支持.1.3.2 JSP技术JSP技术将前台与后台紧密的联系到一起,我们通过JSP技术可以使用JAVA语言来编写类,也可以写后台所展现的对应的界面.并且JSP还支持基于组件的设计,使web开发很简便.1.3.3 JavaScript说到界面,我们想起来的不仅是HTML,CSS,还有可以使页面更加灵活的JavaScript.它有一个最重要的功能就是面向对象,这一点与JAVA很相似,它可以响应用户的各种操作.2需求分析2.1需求调研在项目的开始是需求调研,走访了一些超市,经过一系列的调查与询问中发现,现行的超市库存管理工作的确存在着很多不足之处,手工记录的方式不易保存,容易丢失,同样也不利于数据查询和统计分析.根据超市的实际情况及调查结果,发现实现超市管理的网络化、信息化是十分有必要的,因此设计本套超市管理系统.2.2可行性分析我们在开发每一个系统的过程中,都会有很多方面的限制,比如,我们是否有能力开发这个系统,时间是否充足.因此,在这之前,都要做可行性分析,这样有利于减少开发风险,避免人力、物力和财力的浪费.下面就技术和经济两个方面来介绍.(1)技术的可行性本系统所用的开发工具是我开发以来一直用的MyEclipse,将其与数据库SqlServer相联系,开发所运用的语言是JAVA,它最大的特点是面向对象编程,并且简单易学.大二时就学习了JAVA课程,大三期间也了解了J2EE的知识,超市管理系统总体上开发难度不高,数据库的设计和操作是本系统设计的核心.在大学期间的学习也使我具备一定的系统分析、设计和测试能力.因此,完成系统实现在技术上完全具有可行性.(2)经济的可行性如今是信息化时代,信息化管理可以使超市库存管理工作更加系统化、快速化、全面化.这样不但可以提高企业的工作效率,还可以带来一定的经济效益.在提高效益的同时,可以全方位的了解人员信息以及商品的信息,本系统对电脑配置的要求不高,一般的电脑就可以实现操作,满足需要,因此在经济上完全具有可行性.2.3系统用户用例图管理员用例图:员工管理 管理员负责管理整个超市,可及时掌握超市的商品的动态信息,如图:商品管理商品入库登录系统商品出库管理员库存管理退出系统图1 管理员用例图2.4功能模块需求分析本系统的特色是使用方便,页面简洁,使人用起来得心应手,并且具有较强的安全性,还可以避免其他用户的恶意操作.本系统将实现以下基本功能: (1)登录模块:管理员或员工进入主页面进行登录. (2)员工信息管理模块:使管理者迅速了解人员基本信息等. (3)商品信息管理模块:商品基本信息的录入以及对他们进行分类等. (4)入库信息管理模块:对于新采购的商品进行记录等. (5)出库信息管理模块:商品出库的基本信息的添加,修改,删除及查看. (6)库存信息管理模块:查看所有商品的数量等信息,若库存不够可做标注. (7)退出系统模块:退出整个系统.系统的功能结构图2所示:超市管理信息系统商品信息管理商品入库管理商品分类管理员工管理库存信息出库明细出库管理图2 用户功能模块图2.5设计的基本思想设计思想遵循以下几点:(1)采用B/S结构进行前台与后台分离方式进行开发,使整个系统层次分明.(2)设计采用模块化的方式.(3)整个系统面向对象开发和设计.(4)页面简单大方,使人一目了然,便于操作.2.6界面需求目前人们对页面效果的呈现水平要求越来越高,已经成为评价软件质量的一条重要的指标,界面的效果好,不但可以增加用户使用系统的信心,使用户得到心灵上的喜悦,还可以提高使用者的工作热情和兴趣,因此提高工作的效率.JSP技术以JAVA语言为基础,使创建页面十分方便.3系统分析与设计3.1数据库的分析与设计我们所做的有关计算机的系统都是以数据库为核心的,它依赖数据库管理系统,并且在数据库的支持下,进行数据信息的收藏集合、整理、存储、检索、更改和加工等操作.数据库现在已经成为现代信息技术的基础,系统的开发已经离开不了数据库,它甚至已经成为开发系统的核心部分.因此,设计好数据库对整个系统来说是十分必要的.3.1.1数据库的概念结构设计在数据库的概念结构设计这方面,将采用实体联系(E-R)这种的模型设计方法.E-R模型法的组成元素有三个:实体、属性、联系,用户在工作环境中所涉及的事物就是实体,对实体特性的描述就是属性.根据以上对数据库的需求分析,并结合系统概念模型的特点及建立方法,建立E-R模型图.实体 属性 实体关系图3 E-R模型基本要素图4 数据库概念模型E-R3.1.2数据库的逻辑结构设计众所周知,数据库概念模型是虚拟的,之所以说是概念模型,只是便于人们对整个系统的理解以及理清思路,它相对于任何的数据库管理系统都是独立的,因此,要转化成为计算机所能识别的逻辑关系模型,这样才能处理事务,E-R模型转换成关系数据库模型应遵循以下原则:(1)要将每一个实体都转换成一个关系(2)将每一个主键都设置成非空(3)对于二元联系应按照一定联系来定义外键,例如,一对多、一对一、多对多等.根据E-R模型,超市管理系统建立了以下逻辑数据结构,下面是商品类别表和管理员信息表两个数据表的详细说明.(1)商品类别表主要是记录了商品类别基本信息.表结构如下表所示:表1商品类别表(t_catelog)列名数据类型长度允许空是否主键说明idint4否是编号namevarchar50否否类别名称jieshaovarchar50否否类别介绍(2)管理员信息表主要记录的管理员的账号信息,包括用户名和密码,表结构如下表所示:表2管理员信息表(t_admin)列名数据类型长度允许空是否主键说明userIdInt4否是编号userNamevarchar50否否用户名userPwvarchar50否否密码3.1.3数据库的连接原理连接数据库采用的是JDBC连接方式,只需在工程中导入对应数据库的jar包,就能连接到数据库了,在程序中,用Class.forName()方法来加载驱动程序,在用DriverManager的getConnection()方法就可以创建一个数据库连接.程序采用的是DAO模式来操作数据库,DAO(Data Access Object,数据访问对象),他的主要思想就是从抽象数据源获取与操纵数据的方法.本系统为了方便数据库的操作,主要使用DBContent的对象来接一个数据库(建立一个类DBContent).4系统功能实现在开发管理系统的生命周期里,仅过了需求分析、系统设计等之后,我们便开始要对系统进行实施阶段.在系统分析和设计阶段,系统开发工作主要是集中在逻辑、功能和技术设计上,系统实施阶段要继承此前面各个阶段的工作成果,将技术设计转化为物理实现,因此系统实施的成果是系统分析和设计阶段的结晶.4.1系统登陆页面实现(1)描述:为了保证系统的安全性,要先使用本系统必须先登陆到系统中,并且不同角色的用户进入不同的界面,功能也随之不同.(2)程序运行效果图如图5所示:图5 系统登陆页面设计(3)在的登录的界面我们输入用户名,密码和身份后,点击登录按钮,跳转到登陆的service中,他将中会对用户名,密码,以及身份进行判断,如果正确将会跳转到相应的界面,如果输入有误将会弹出提示信息.4.2系统首页设计(1)描述:管理员主页面,在界面的左侧我们可以看到管理员可操作的一些功能,包括对员工还有商品的操作等,点击所需的菜单,就可以进入相关的管理页面,并且高亮显示,并且在每个下面都有对应的子菜单,我们可以一目了然.(2)程序运行效果图如图6所示:图6 系统主页面为了提高整个系统的安全性,在每个jsp页面中将会对相关用户进行拦截操作,这样可以避免用户直接进入子菜单而在这之前并没有登陆的这种情况:if(session.getAttribute(user)=null) out.print(alert(请先登录!);window.open(./index.jsp,_self);4.3商品管理模块4.3.1商品信息录入 (1)描述:输入商品类别相关正确信息后点击录入按钮,如果是没有输入完整的信息,都会给出相应的错误提示,不能录入成功.输入数据都通过form表单中定义的方法onsubmit=return checkForm()来检查,checkForm()函数中是各种的校验输入数据的方式. (2)程序效果图如下图7所示:图7 商品信息录入登陆系统(3)流程图如下图8所示:录入商品信息 未通过系统验证商品信息 通过录入成功结束图8 做工师傅信息录入流程图4.3.2商品信息管理(1)描述:管理员点击左侧的菜单“商品管理”,页面跳转到商品管理界面,调用后台的action类查询所有的超市库存信息.(2)程序效果图如下图9所示:图9 商品信息管理商品信息管理具体代码实现见附录1.4.3.3商品信息删除(1)描述:首先点击商品管理,将会跳转到商品管理这个界面,我们可以看到所有的商品的信息,在表格的每一行都有删除操作,点击所要删除的商品信息的按钮,会弹出一个对话框,点击确定便可删除该商品信息.(2)程序效果图如下图10所示:图10 商品信息删除4.4采购入库管理4.4.1采购入库添加(1)描述:在此页面主要是输入入库单据号、入库时间、总金额、经手人等信息,总金额检验输入是否为数字,是否为空也是通过form表单中的onsubmit=return checkForm()来检查.(2)程序效果图如图11所示:图11 采购入库添加4.4.2采购入库管理(1)描述:管理员点击左侧的“采购入库管理”菜单进入此页面,调用后台的入库Action类查询出所有的入库信息,并把这些信息封转到数据集合List中,绑定到request对象,然后页面跳转到相应的jsp,显示出入库信息.可以点击入库明细连接.查看入库明细信息,也可以添加新的入库明细.(2)程序效果图如下图12所示:图12 入库管理页面采购入库管理具体代码实现见附录2.(3)在整个系统中有很多的地方都要输入日期,例如:商品的入库时间等等,这方面采用的是mydata97这个日历控件的方式来实现,要在工程中导入Calendar.js文件,在jsp页面开始引入该js文件,在文本框的属性定义中定义方法onclick=new Calendar().show(this);即可. 4.5商品分类管理4.5.1分类信息录入(1)描述:输入分类信息后,点击提交按钮,可以在备注添加其他信息.如果不输入分类名称,系统会给出警示,提示必须输入分类名称.(2)程序效果图如图13所示:图13 商品信息录入分类管理核心代码实现见附录3.4.5.2分类信息查询(1)描述:不输入任何信息点击查询按钮查询的是所有的分类信息,可以根据输入条件来进行筛选.(2)程序效果图如图14所示:图14 商品信息查询4.6安全退出系统(1)描述:点此按钮回到系统的主页面.(2)关键代码:主要是通过javascript语句来实现,item_word84=退出系统;item_link84=javascript:window.open(./index.jsp,_self); 5系统测试5.1系统测试目的与意义系统测试是每一个项目开发周期中不可缺少,十分重要的一个阶段,并且他需要一定的耐心,因为这是一个很漫长的过程.它的重要性体现在他能保证系统的质量与可靠性.它是对整个系统开发过程包括系统分析、系统设计和系统实现的最终审查.经过测试后,发现的问题要经过调试来找出错误原因和位置,对其进行改正.系统测试是正对整个项目进行检测,目的是检验系统是不是满足了我们的要求,是否达到了我们的目标,如果没有,找出不符或者矛盾的地方.5.2测试过程在测试一开始,因为数据库中的数据是随便输入的,没有实在可用性,为了使整个系统更加完善,在测试的过程中,本系统会将一开始随便输入的数据全部清除后,再输入一些有效的测试数据,这样可以更加真实的反映系统功能实现的情况.这样的去不断发现问题,然后反复的测试、调试,把问题一个个的解决掉,最终系统就可以正常运行.5.3其他错误在程序设计实现的过程中会产生各种难以预料的错误,如代码书写错误、传值类型不一致问题等等.这些错误都需要经过细心的检测和反复的调试才能够发现并且排除.6结论本次毕业设计将我大学四年所学的关于程序开发方面的理论知识应用到实践中来,加深了我对理论知识的理解,同时也提高了实践能力.在这段日子里,我查阅了许多有关超市管理信息系统的资料,翻阅了许多关于前后端所能用到的书籍,并结合自己的经验,详细调查了超市管理的工作内容与细节,开发设计了这个超市库存管理系统,虽然在学校每个学期都有专业的老师给我们进行实训,但在本次毕业设计中还是遇到了许多问题,比如说在jsp页面将输入框设为不可用是添加属性readonly=“true”,而我在实际编程中却错写成disable=“true”,这样直接导致了request对象取不到数据,调试了程序很久才发现request对象获得的返回值一直是空,之前一直以为是代码哪里出了问题,总是在查源程序的逻辑.也是由于不细心在具体实践中却浪费了不少时间,看来平时还是要多多实践才是.在系统的开发过程中,我运用到了JavaWeb技术和自己在平时学习中掌握的一些技术,通过这些技术的实现,整个系统的性能得到了大大的提高.我在论文中都有介绍,但本系统让然存在很多的不足之处,比如,网页存在兼容性的问题在今后我会努力弥补.通过本次毕业设计我锻炼了自己的独立思考以及研究能力,也从中学到了很多在课堂上学不到的东西.通过实践我深刻的体会到遇到困难焦急的心理和解决困难后的喜悦之情,同时也增强了我的理论联系实际的能力,这为自己以后的工作奠定了良好的基础.本管理系统可以减轻我校超市管理人员的工作负担,但由于很多方面的限制,还存在一些不足之处,还需要改进,应该做进一步的调查需求分析工作,来更深入完善系统.参考文献 1徐超毅.超市库存管理系统的面向对象分析J.安徽理工大学学报(自然科学版),2005,25(3):62-64. 2张国玉,牟宗国.加强和完善超市库存管理工作探讨J.四川教育学院学报,2007,23(4):19-20. 3吴汉龙.实在的系统,实在的效用浅析浙江树人大学超市库存管理系统开发与试用J.高校后勤研究,2009,20(4):94-97. 4邓子云.JSP网络编程从基础到实践M.北京:电子工业出版社.5张长富,黄中敏JavaScrip动态网页编程实例手册M北京:海洋出版社,2005:196-239.致 谢本次设计历时两个月,在本次毕业设计中,能够基本顺利的完成任务,是与张宏智老师和王世广老师的耐心指导分不开的.两位老师无论是在毕业设计过程中,还是在论文完成中都给予了我极大的帮助.同时,两位老师认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我受益匪浅.他们的勤奋严谨的教学态度也给我留下了极为深刻的印象.我从两位老师身上学到了很多东西.在理论上还是在实践中,我能力都得到不少的提高,这对于我以后的工作和学习都有一种巨大的帮助,在此,特向两位老师表示由衷的感谢.通过这次毕业设计的整个开发过程,我系统开发过程从需求分析到具体功能实现,再到最终测试和维护的理解有了很大的进步,让我对系统开发有了更深层次的认识.现在我的动手能力和独立解决问题的能力也得到了很大的锻炼和提高,这是这次毕业设计最好的收获.最后,在整个系统开发过程中,我身边的同学和朋友给了我很多的建议,让我很快的确定了系统的业务逻辑,我衷心的向他们表示感谢.附录1商品信息管理具体代码实现:public String goodsAdd()TGoods goods=new TGoods();goods.setCatelog_id(catelog_id);goods.setName(name);goods.setChandi(chandi);goods.setDanwei(danwei);goods.setGuige(guige);goods.setBeizhu(beizhu);goods.setDel(no);goodsDAO.save(goods);this.setMessage(操作成功);this.setPath(goodsMana.action);return succeed;public String goodsMana()String sql = from TGoods where del=no order by catelog_id;List goodsList=goodsDAO.getHibernateTemplate().find(sql);Map request=(Map)ServletActionContext.getContext().get(request);request.put(goodsList, goodsList);return ActionSupport.SUCCESS;public String goodsDel()String sql = update TGoods set del=yes where id=?;Object o=id;goodsDAO.getHibernateTemplate().bulkUpdate(sql, o);this.setMessage(删除成功);this.setPath(goodsMana.action);return succeed;附录2采购入库管理具体代码实现:public String rukuAdd()TRuku ruku=new TRuku();ruku.setDanjuhao(danjuhao);ruku.setShijian(shijian);ruku.setZongjiage(zongjiage);ruku.setJingshouren(jingshouren);ruku.setBeizhu(beizhu);ruku.setDel(no);rukuDAO.save(ruku);this.setMessage(操作成功);this.setPath(rukuMana.action);return succeed;public String rukuM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论