毕业论文-基于jsp的乐器租赁管理系统_第1页
毕业论文-基于jsp的乐器租赁管理系统_第2页
毕业论文-基于jsp的乐器租赁管理系统_第3页
毕业论文-基于jsp的乐器租赁管理系统_第4页
毕业论文-基于jsp的乐器租赁管理系统_第5页
已阅读5页,还剩40页未读 继续免费阅读

下载本文档

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

文档简介

1、烟台大学毕业论文(设计)任务书院(系):计算机与控制工程学院姓名张宗佳学号201158504342毕业届别2015专业软件工程毕业论文(设计)题目基于JSP的乐器租赁管理系统指导教师刘秋兰学历硕士研究生职称讲师所学专业计算机应用技术主要内容:乐器租赁管理系统的开发任务主要包括基于JSP的乐器租赁管理和管理员管理两个方面。内含:查询租借信息、添加租借信息、乐器信息管理、乐器类别管理、管理员登录、供应商管理、会员信息管理。基本要求:组建一个基于JSP的乐器租赁管理系统,实现:1)基于WEB构架,管理员可以登录该管理系统进行操作管理;2)能够对客户的信息资料进行管理;3)对租赁信息进行管理和维护;4

2、)能够对乐器信息进行查询;5)乐器归还之后可以自动填写归还的时间。 进度安排:2014.12.13:系统的分析阶段,开题。2014.12.30:系统的设计、实现阶段。2015.01.052015.02.11:实施设计技术方案,改进完善设计技术方案。2015.02015.04.19:论文的撰写和答辩。指导教师(签字): 年 月 日院(系)意见: 教学院长(主任)(签字): 年 月 日备注:摘要现在很多大型的琴行都会有乐器的租赁服务来解决大家的临时需求。在商业快速发展的今天,乐器的租赁也丰富并深入到人们的业余生活中,乐器租赁管理系统则成为各琴行和乐器租赁商的一个重要管理系统。 根据租赁的乐器种类和

3、用途的不同,可以按天,按月租赁。在租赁账单越来越多后,单纯地用纸笔来记录租赁情况并不容易查找租赁情况,还容易丢失数据账单。所以,乐器租赁管理系统就是一个用来记录琴行乐器租赁情况的系统。在该用户第一次租赁时,为该用户添加用户信息,登记租赁记录。在缴纳租金时根据租借者的账号、存储的 号码或租借者姓名查看该租借者租赁的时长、乐器种类计算出该缴纳的租金。各客户的基本信息只能由管理员登录后进行修改,其他人无法登录该租赁系统修改信息。该系统利用JAVA语言在MyEclipse平台,结合Mysql数据库进行开发,使用JDBC连接数据库,用JDBC建立MyEclipse和数据库之间的连接,实现了界面与底层数据

4、库的联系。该系统能够有条理地记录每一个客户租借乐器的情况,更新客户的基本信息和租借信息,迅速查询出客户的租借信息,方便了用户对租借记录的保存。 关键词 乐器租赁系统;JSP;Mysql;查询Abstract:Nowadays many large stores will have a musical instrument rental service to solve the temporary needs of everyone,fast forward to now,the instrument rental dives deep into the life outside of peop

5、le,so,the instrument rental management system has become an important system for the instrument shop and instrument rental business. According to the lease and the use of different kinds of instruments, people can rent instrument by the day or month. With more and more payments, recording the rental

6、 situation simply with pen and paper is not easy to find rental situation, but also easy to lose data bill. Therefore, the instrument rental management system is used to record a instrument leasing system. When the user first lease, register can add messages for the user to record rental registratio

7、n. While customer paying the rent bill,query the rental lease duration, the kinds of instruments by phone number or name of the customer to calculate the payment of rent. Basic information of each customer can only be modified by the administrator, other people will not be able to log on to the syst

8、em to modify the information of rent. The system uses JAVA language in the MyEclipse platform, combined with Mysql database development, establish a connection using JDBC, the interface with the database connection. The system can be organized to record each customer loan instruments, basic informat

9、ion and loan information update customers, quickly query customer loan information, convenient for the user to save the loan records.Key words: Instrument rental system; JSP; Mysql; query目 录TOC o 1-3 h u HYPERLINK l _Toc23066 1 绪 论 PAGEREF _Toc23066 1 HYPERLINK l _Toc21182 1.1 本课题的研究意义及必要性 PAGEREF _

10、Toc21182 1 HYPERLINK l _Toc30506 1.2 相关领域的应用发展现状及趋势 PAGEREF _Toc30506 1 HYPERLINK l _Toc31497 2 系统分析 PAGEREF _Toc31497 3 HYPERLINK l _Toc1904 2.1 系统功能要求 PAGEREF _Toc1904 3 HYPERLINK l _Toc6113 2.2 系统开发功能 PAGEREF _Toc6113 3 HYPERLINK l _Toc3216 2.3 系统的可行性分析 PAGEREF _Toc3216 3 HYPERLINK l _Toc10159 2.

11、4 开发技术和开发框架介绍 PAGEREF _Toc10159 4 HYPERLINK l _Toc26940 2.4.1 JSP技术介绍 PAGEREF _Toc26940 4 HYPERLINK l _Toc12426 2.4.2 Tomcat介绍 PAGEREF _Toc12426 4 HYPERLINK l _Toc10420 2.4.3 SSH框架介绍 PAGEREF _Toc10420 4 HYPERLINK l _Toc16422 3 总体设计 PAGEREF _Toc16422 5 HYPERLINK l _Toc31597 3.1 系统用例图 PAGEREF _Toc3159

12、7 5 HYPERLINK l _Toc119 3.2 功能模块划分 PAGEREF _Toc119 12 HYPERLINK l _Toc22957 3.3 系统模块设计图 PAGEREF _Toc22957 13 HYPERLINK l _Toc11836 3.4 系统流程图 PAGEREF _Toc11836 14 HYPERLINK l _Toc1127 4 详细设计 PAGEREF _Toc1127 15 HYPERLINK l _Toc26892 4.1 各模块功能 PAGEREF _Toc26892 15 HYPERLINK l _Toc7581 4.1.1 乐器租赁管理模块 P

13、AGEREF _Toc7581 15 HYPERLINK l _Toc20634 4.1.2 管理员管理模块 PAGEREF _Toc20634 17 HYPERLINK l _Toc7430 4.2 系统数据库设计 PAGEREF _Toc7430 18 HYPERLINK l _Toc16713 4.2.1 概念设计 PAGEREF _Toc16713 18 HYPERLINK l _Toc19161 4.2.2 逻辑设计 PAGEREF _Toc19161 21 HYPERLINK l _Toc21073 4.2.3 数据库字典设计 PAGEREF _Toc21073 21 HYPERL

14、INK l _Toc31200 5 系统实现 PAGEREF _Toc31200 24 HYPERLINK l _Toc2554 乐器租赁模块的实现 PAGEREF _Toc2554 24 HYPERLINK l _Toc17226 5.2 管理员管理模块的实现 PAGEREF _Toc17226 27 HYPERLINK l _Toc8374 6 综合测试 PAGEREF _Toc8374 30 HYPERLINK l _Toc22987 6.1 乐器租赁系统运行界面 PAGEREF _Toc22987 30 HYPERLINK l _Toc12845 6.2 测试用例 PAGEREF _T

15、oc12845 32 HYPERLINK l _Toc30483 结 束 语 PAGEREF _Toc30483 33 HYPERLINK l _Toc29552 致 谢 PAGEREF _Toc29552 34 HYPERLINK l _Toc15776 参考文献 PAGEREF _Toc15776 35 HYPERLINK l _Toc32745 附录 部分代码 PAGEREF _Toc32745 361 绪 论本章主要讲述了乐器租赁的研究意义及其在国内外的发展情况,下面将详细阐述我在做课题之前的调查。1.1 本课题的研究意义及必要性在经济、文化和商业水平快速发展的今天,人们的业余生活也产

16、生了很大的变化。很多人,尤其是很多大学生,在课余时间学习一门乐器,参加一些文艺活动来丰富自己的课余生活,缓解学习带来的枯燥已经是很普遍的事情了。很多文艺演出需要用到质量、声音都比较好的乐器来演奏曲目,如果演出者自身没有一个适合演出的乐器,那么就需要到琴行或租赁商去租赁一个适合演出的乐器。还有一些音乐爱好者想学习一种乐器,但又不确定自己是否能够“入门”,想尝试过后再决定是否要学习这门乐器时,也需要到琴行租赁一件适合自己的乐器以供练习。这样,乐器的租赁就丰富并深入到人们的业余生活中,乐器租赁管理系统则成为各琴行和乐器租赁商的一个重要管理系统。 该乐器租赁管理系统基于Web,利用Java语言在MyE

17、clipse平台,结合Mysql数据库进行开发,用JDBC建立MyEclipse和数据库之间的连接,实现了界面与底层数据库的联系。该系统能够有条理地记录每一个客户租借乐器的情况,更新客户的基本信息和租借信息,迅速查询出客户的租借情况,将租赁过程的各个数据都整理起来,包括租借者信息、乐器种类和型号、乐器的使用情况、租借时长、租金、押金、运输搬运费用等等,都会输入到数据库中,以防丢失客户信息,方便了用户对租借记录的保存。根据租赁的乐器种类和用途的不同,可以按天,按月租赁。在租赁账单越来越多后,单纯地用纸笔来记录租赁情况并不容易查找租赁情况,还容易丢失数据账单。所以,乐器租赁管理系统就是一个用来记录

18、琴行乐器租赁情况的系统。在该用户第一次租赁时,为该用户添加用户信息,登记租赁记录。在缴纳租金时根据租借者的账号、存储的 号码或租借者姓名查看该租借者租赁的时长、乐器种类计算出该缴纳的租金。各客户的基本信息只能由管理员登录后进行修改,其他人无法登录该租赁系统修改信息。该系统不仅大大减轻了租赁商对乐器的管理和推销工作,这种高透明的数据管理也增加了租借者对租赁商的信任。1.2 相关领域的应用发展现状及趋势乐器租赁目前在国内已经开始发展起来,但部分琴行或乐器商并不是以电子的形式提供服务,而是当面交涉。尽管租赁商将租赁信息以网站的形式发布租赁消息,但也只是将消息发布给“客户”,并没有一个系统来记录租赁的

19、数据。这样,就需要一个乐器租赁管理系统来实现客户租赁乐器的各种数据,这样更有利于查找客户信息,也更加方便对乐器的管理。 乐器租赁并不是一个新兴的业务,在国内,很多大中城市已经有一些乐器行经营这项业务。东楚网黄石新闻网(东楚晚报)这样报道:“乐器租赁业务的最大特点就是价格实惠,给许多喜欢音乐,但暂时买不起音乐器材的音乐爱好者提供了一个机会。”黄石的艺术教育这几年发展的很快,尤其是年轻家长,对小孩子音乐素质的培养非常在意。在周先生的乐器行里经常有家长带着小孩子来询问能不能学习弹钢琴。但是现在一些乐器的价格非常高,像钢琴,一万元左右的价格还是普通的,普通的萨克斯价格也在4000元左右。对工薪家庭来说

20、,购买这样的一件乐器是一笔不小的开支。另外,对孩子来说,他学习一种乐器可能只是一时的兴趣,过了一段时间可能就没有兴趣了,花大价钱购买的乐器就成了摆设,家长的投资就浪费了。对那些刚刚开始学音乐的孩子来说,租赁一件乐器比购买一件乐器的成本要低很多,而且也可以降低风险1。由此可见,乐器租赁这项业务是很有发展空间的,所以,相应的乐器租赁系统也有一个很大的房展空间。随着人们生活水平的提高随着租赁业务的发展,乐器租赁系统是很值得开拓和期待的。2 系统分析本课题旨在开发一个基于JSP的乐器租赁系统,实现管理员的登录、管理客户个人信息和乐器租赁信息等功能。2.1 系统功能要求为了使管理员能高效、方便、快捷地管

21、理租借信息,该系统将租借信息列举出来以供查看客户是否归还乐器。管理员登录到该系统,通过添加客户信息来管理客户的个人信息(包括姓名、性别、年龄、 号码)、租借的乐器种类和型号、租借时长(按日/月)、押金、供应商的名称地址联系人等信息,在后期添加乐器的使用情况,根据乐器的磨损程度扣除一定的赔偿费用。2.2 系统开发功能因为乐器租赁系统是一个需要保存客户资料的系统,需要建立一个数据库来存储需要输入的信息,因此该系统要实现的功能有:(1)数据库的设计数据库添加客户的个人信息、乐器信息、租赁信息、乐器类别、供应商信息等信息。(2)实现添加信息功能管理员可以添加乐器信息、乐器种类信息、租赁信息、会员信息、

22、供应商信息并进行管理。(3)实现JDBC为了能将数据写入数据库,使用JDBC连接MyEclipse平台和Mysql数据库。(4)界面设计界面图形主要是作为显示查询结果使用的。不仅如此,界面还包括管理员的登录和添加客户信息等。2.3 系统的可行性分析目前来说,在很多大中城市的琴行都会有乐器租赁业务,随着业务数据的增多,对客户信息的保存就成为一个问题。因此,采用本系统来记录客户的租赁信息是很有必要的。本课题基于Web使用Java语言在MyEclipse平台开发。Java语言是目前所使用的最广泛的网络编程语言之一。它具有简单、面向对象、多线程、安全等特点,特别适合于Internet的应用开发。而该乐

23、器租赁管理系统最主要的是实现数据的存储和界面的编辑,因此,该乐器租赁管理系统使用java语言开发是可行的。2.4 开发技术和开发框架介绍2.4.1 JSP技术介绍Java Server Page简称JSP,是运行在服务器端的脚本语言之一,用来开发动态网页的一种技术。JSP继承了Java技术的简单、便利、面向对象、跨平台、安全可靠等优点,比起其他服务器脚本语言,JSP更加简单、迅速和有力。在JSP中利用JavaBean和JSP元素,可以有效地将静态的HTML代码和动态数据分开来,给程序修改和扩展带来了很大方便2。在JSP的开发过程中,使用Tomcat作为Web服务器。2.4.2 Tomcat介绍

24、Tomcat服务器是由JavaSoft和Apache开发团队共同提出并合作开发的产品。它能够支持Servlet3.0和JSP2.2,并且具有免费、跨平台等诸多特性。Tomcat服务器已经成为学习开发JSP应用的首选2,本课题使用了Tomcat作为Web服务器。2.4.3 SSH框架介绍SSH (struts+spring+hibernate) HYPERLINK :/baike.baidu /view/101357.htm t :/baike.baidu /_blank 集成框架3,是当前比较流行的一种Web HYPERLINK :/baike.baidu /view/330120.htm t

25、 :/baike.baidu /_blank 程序开源框架。基于SSH框架的系统主要分为四层: HYPERLINK :/baike.baidu /view/239615.htm t :/baike.baidu /_blank 表示层、 HYPERLINK :/baike.baidu /view/1030527.htm t :/baike.baidu /_blank 业务逻辑层、 HYPERLINK :/baike.baidu /view/1862970.htm t :/baike.baidu /_blank 数据持久层和实体层,用来协助开发人员在较短时间内搭建一个结构清楚、复用性强、易于维护的

26、多层 HYPERLINK :/baike.baidu /view/138452.htm t :/baike.baidu /_blank Web应用程序。将Struts结构作为整个系统的基础框架,用来实现MVC的分离,该框架的模型部分,用于负责业务的跳转,通过Hibernate框架支持数据 HYPERLINK :/baike.baidu /view/198047.htm t :/baike.baidu /_blank 持久层,用Spring管理struts和hibernate部分。根据自己的需求用分析 HYPERLINK :/baike.baidu /view/125370.htm t :/ba

27、ike.baidu /_blank 面向对象的方法提出一些基本模型,将这些模型实现成为Java对象,然后编写DAO(Data Access Objects)的基本接口,还要给出Hibernate的DAO实现,使用Hibernate框架实现的DAO类来实现Java类与数据库之间的转化和访问,最后由Spring做管理,管理struts和hibernate部分。本系统采用了SSH的模式进行开发,在SSH框架下进行开发,不仅节省了开发时间,还提高了开发的效率。3 总体设计本章阐述了本课题的总体设计,也就是概要设计。经过系统分析阶段,已经知道系统要“做什么”,而总体设计的工作便是概述“如何做”的问题。本

28、章从模块划分和模块之间的相互关系方面阐述。3.1 系统用例图系统用例图如下图(图3.1)所示,显示了用户通过该系统可以完成的功能。 系统用例图1、查询租借信息用例(图3.2):图3.2 查询租借信息用例查询租借信息用例描述(表3.1):表3.1 租借信息查询用例描述用例名称:查询租借信息用例ID:ISTRUMENT_SYS_001角色:琴行管理人员用力说明:该用例主要功能是实现管理员对租借信息的查看前置条件:进入主页面基本事件流:参与者动作系统响应1、管理员进入主界面,点击“出租信息管理”按钮。其他事件流:无异常事件流:参与者动作系统响应后置条件:管理员查看租借信息成功2、添加租借信息用例(图

29、3.3) 图3.3 添加租借信息用例添加租借信息用例描述(表3.2):表3.2 租借信息添加用例描述用例名称:添加租借信息用例ID:ISTRUMENT_SYS_002角色:琴行管理人员用力说明:该用例主要功能是实现管理员对租借信息的添加前置条件:进入主页面基本事件流:参与者动作系统响应1、管理员进入主界面,点击“出租信息添加”按钮。其他事件流:无异常事件流:参与者动作系统响应后置条件:管理员添加出租信息成功 3、乐器信息管理用例(图3.4): 图3.4 乐器信息管理用例乐器信息管理用例描述(表3.3):表3.3 乐器信息管理用例描述用例名称:乐器信息管理用例ID:ISTRUMENT_SYS_0

30、03角色:琴行管理人员用力说明:该用例主要功能是实现管理员对乐器信息的添加和查看前置条件:进入主页面基本事件流:参与者动作系统响应1、管理员进入主界面,点击“乐器信息管理”按钮。2、系统在数据库查找数据,并进入乐器信息管理页面其他事件流:无异常事件流:参与者动作系统响应暂无暂无后置条件:管理员管理乐器信息成功4、乐器类别管理用例(图3.5): 图3.5 乐器类别管理用例乐器类别管理例描述(表3.4):表3.4 乐器类别管理例描述用例名称:乐器类别管理例用例ID:ISTRUMENT_SYS_004角色:琴行管理人员用力说明:该用例主要功能是实现乐器类别的添加、删除前置条件:进入乐器类别管理界面基

31、本事件流:参与者动作系统响应1、管理员进入主界面,点击“乐器类别管理”按钮。2、系统在数据库查找数据,并进入乐器类别管理页面其他事件流:无异常事件流:参与者动作系统响应暂无暂无后置条件:管理员管理乐器类别成功 5、管理员登录用例(图3.6): 图3.6 管理员登录用例管理员登录用例描述(表3.5):表3.5 管理员登录用例描述用例名称:管理员登录用例ID:ISTRUMENT_SYS_005角色:琴行管理人员用力说明:该用例主要功能是实现管理员的登录前置条件:进入登录界面基本事件流:参与者动作系统响应1、用户输入基本信息(用户名、密码等),点击“登录”按钮。其他事件流:无异常事件流:参与者动作系

32、统响应未输入用户名或密码后置条件:管理员登录成功 6、供应商管理用例(图3.7) 图3.7 供应商管理用例供应商管理用例描述(表3.6):表3.6 供应商管理用例描述用例名称:供应商管理用例ID:ISTRUMENT_SYS_006角色:琴行管理人员用力说明:该用例主要功能是实现管理员对供应商的管理前置条件:进入主页面基本事件流:参与者动作系统响应1、用户进入主界面,点击“供应商管理”按钮。2、系统在数据库查找数据,并进入供应商管理页面其他事件流:无无异常事件流:参与者动作系统响应暂无暂无后置条件:管理员管理供应商信息成功 7、会员信息管理用例(图3.8)图3.8 会员信息管理用例会员信息管理用

33、例描述(表3.7):表3.7 会员信息管理用例描述用例名称:会员信息管理用例ID:ISTRUMENT_SYS_007角色:琴行管理人员用力说明:该用例主要功能是实现管理员对会员信息的管理前置条件:进入主页面基本事件流:参与者动作系统响应1、用户进入主界面,点击“会员信息管理”按钮。2、系统在数据库查找数据,并进入供应商管理页面其他事件流:无无异常事件流:参与者动作系统响应暂无暂无后置条件:管理员管理会员信息成功 3.2 功能模块划分根据该系统的实际需求,大致可分为以下几个方面实现:1、乐器租赁管理模块(1)查询租借信息管理:进入出租信息管理页面可以显示租借信息,租借乐器种类,时间及时长,乐器使

34、用情况等。(2)添加租借信息管理:当有客户租借乐器时,将客户姓名、 号、乐器种类及型号、租用时间、日租费用等信息添加到相应的模块中。(3)乐器信息管理:可以查看乐器的名称、供应商、日租信息等;若购进新乐器时,可以添加乐器信息。(4)乐器类别管理:将乐器按照类别管理,可以更有效的给会员提供乐器信息。2、管理员管理模块(1)管理员登录:管理员输入用户名和密码登录。(2)供应商管理:管理员添加和管理供应商的信息,地址、联系人等。(3)会员信息管理:管理员可以管理和添加、删除会员信息。3.3 系统模块设计图根据功能模块的划分,该乐器租赁管理系统的模块设计图如下(图3.9)所示。乐器租赁管理模块:该系统

35、的用户可以添加、查询、租借信息,还有乐器信息管理和乐器类别管理。管理员管理模块:实现管理员的登录、对供应商的管理和对会员信息的管理功能。图3.9 系统模块图3.4 系统流程图乐器租赁系统的流程图如下(图3.10)所示: 图3.10 系统流程图4 详细设计该系统由本人一人完成,下面从系统模块功能和数据库设计两方面详细介绍本课题所设计的内容。4.1 各模块功能该系统主要包含了乐器租赁管理模块和管理员管理模块:乐器租赁管理模块分为查询租借信息、添加租借信息、乐器信息管理、乐器类别管理四个模块;管理员管理模块分为管理员登录、供应商管理、会员信息管理三个模块。下面一一介绍这些模块的实现。4.1.1 乐器

36、租赁管理模块图4.1 乐器租赁管理时序图 (1)查询租借信息 = 1 * GB3 * MERGEFORMAT 进入主页面,点击“出租信息管理”按钮。查询所有租借信息 1.若数据库内有相应数据,则显示查询结果。归还后判断是否逾期并计算租借金额。 2.若数据库内无相应数据,则不显示。 (2)添加租借信息 = 1 * GB3 * MERGEFORMAT 进入主页面,点击“出租信息添加”按钮。 = 2 * GB3 * MERGEFORMAT 在输入框中输入相应信息,点击“提交”按钮。若输入框内全为空白,则提示“请输入租借信息!”若有项目没有填写,提示“请填写xxx!”数据输入正确,提示“信息添加完毕!

37、”信息,并从出租信息管理中查看。 (3)乐器信息管理 = 1 * GB3 * MERGEFORMAT 进入乐器信息管理页面,包含“添加”、“删除”功能按钮。点击“乐器信息管理”按钮,进入“查看乐器信息”页面。点击“添加”按钮,进入“添加乐器信息”页面。点击“删除”按钮,进入“删除乐器信息”页面。 (4)乐器类别管理 = 1 * GB3 * MERGEFORMAT 进入乐器类别管理页面,点击“添加信息类别”按钮,输入要录入的乐器名称进行提交。 = 2 * GB3 * MERGEFORMAT 进入乐器类别管理页面,选中要删除的乐器,点击“删除”按钮,提示是否删除成功。 4.1.2 管理员管理模块图

38、4.2 管理员管理时序图(1)管理员登录 = 1 * GB3 * MERGEFORMAT 进入主页面进行管理员登录操作。 = 2 * GB3 * MERGEFORMAT 在输入框输入用户名和密码,点击“登录”按钮。若用户名和密码正确,则进入主页面。若用户名或密码不正确,则提示用户名或密码错误信息。(2)供应商管理 = 1 * GB3 * MERGEFORMAT 进入主页面,点击供应商管理模块,查看和删除供应商信息。(3)会员信息管理 = 1 * GB3 * MERGEFORMAT 进入主页面,点击“会员信息管理”按钮。 = 2 * GB3 * MERGEFORMAT 进入会员信息管理页面。4.

39、2 系统数据库设计现在数据库已经用于各类应用系统,例如MIS(管理信息系统)、DSS(决策支持系统)、OAS(办公自动化系统)等。实际上,数据库已成为现代信息系统的基础与核心部分。如果数据模型设计得不合理,即使使用性能良好的DBMS软件,也很难是数据库的应用系统达到最佳状态,仍然会出现文件系统存在冗余、异常和不一致问题。总之,数据库设计的好坏直接影响着信息系统的质量和运行效果4。本节将从软件工程的角度对数据库进行设计。4.2.1 概念设计概念设计的目的是产生反映用户单位信息需求的数据库概念结构,即概念模型,概念模型是独立于计算机硬件结构、独立于支持数据库的DBMS4。(1)概念设计阶段描述了事

40、务之间的关系,将各实体联系起来。下面将本课题的所有表结构列出。管理员:管理员编号ID,管理员名称Name,登录密码Password出租:出租信息编号ID,乐器编号ID,会员卡号Card,起租时间StartTime,租借时长shichang,金额统计jine,押金Money,备注Message,是否归还Retrun,归还时间RetrunTime供应商:供应商编号ID,供应商名称Name,地址Address,联系人名称Name,联系人 Phone, Postal, Fax,邮箱Email,删除状态Drop乐器:乐器序号ID,乐器编号ID,乐器名称Name,购买日期Time,供应商Supplier,

41、备注信息Message,图片Image,日租费用RentMoney,删除状态Drop会员:会员编号ID,会员卡号Card,会员名称Name,性别Sex,年龄Age,住址Address, Phone,删除状态Drop乐器类别:类别编号ID,类别名称Name,删除状删除状态态Drop实体E-R图图4.3 整体E-R图图4.4 管理员图4.5 出租图4.6 供应商图4.7 乐器图4.8 会员图4.9 乐器类别4.2.2 逻辑设计概念设计的结果是得到一个与DBMS无关的概念模型。而逻辑设计的目的是把概念设计阶段设计好的概念模型转换成与选用的具体机器上的DBMS所支持的数据模型相符合的逻辑结构(包括数据

42、库逻辑模型和外模型)。这些模型在功能上,完整性和一致性约束及数据库的可扩充性等方面均应满足用户的各种要求4。4.2.3 数据库字典设计数据库字典是所有数据信息的集合,提供所有数据信息的详细描述:管理员信息表(表4.1)表名:t_admin,该表保存了管理员的编号、名称和密码。表4.1 管理员信息表表名t_admin(管理员信息表)列名描述数据类型(精度范围)空/非空约束条件userId管理员编号int(11)非空主键,默认为0userName管理员名称varchar(55)非空userPw密码varchar(55)非空(2)出租信息表(表4.2)表名:t_chuzu,该表保存了所有的租赁信息。

43、表4.2 出租信息表表名t_instrumentt_chuzu(出租信息表)列名描述数据类型(精度范围)空/非空约束条件id出租信息编号int(11)非空主键,默认为0goodsId乐器编号int(255)非空kahao会员卡号varchar(255)非空qizushijian起租时间varchar(255)非空shichang租借时长varchar(255)非空jine金额统计int(11)非空yajin押金int(11)非空beizhu备注varchar(255)shifouhuan是否归还varchar(255)非空huanshijian归还时间varchar(255)非空(3)供应商信

44、息表(表4.3)表名:t_gongyingshang,该表保存了所有的供应商信息。表4.3 供应商信息表表名t_gongyingshang(供应商信息表) 列名描述数据类型(精度范围)空/非空约束条件id供应商编号int(11)非空主键,默认为0mingcheng供应商名称varchar(55)非空dizhi地址varchar(55)非空lianxiren联系人名称varchar(55)非空dianhua联系人 varchar(55)非空youbian varchar(55)非空chuanzhen varchar(55)非空youxiang邮箱varchar(55)非空del删除状态varch

45、ar(55)(4)乐器信息表(表4.4)表名:t_goods,该表保存了所有的乐器信息。表4.4 乐器信息表表名t_goods(乐器信息表) 列名描述 数据类型(精度范围)空/非空 约束条件Id乐器序号int(11)非空主键,默认为0leibieId乐器编号int(11)非空mingcheng乐器名称varchar(50)非空faxingri购买日期varchar(5000)非空gongyingshangId供应商varchar(255)非空beizhu备注信息varchar(255)非空fujian图片varchar(50)非空rizu日租费用int(11)非空del删除状态varchar(

46、255)非空(5)会员信息表(表4.5)表名:t_modelt_huiyuan,该表保存了会员信息。表4.5 会员信息表表名t_huiyuan(会员信息表) 列名描述 数据类型(精度范围)空/非空 约束条件id会员编号int(11)非空主键,默认为0kahao会员卡号varchar(50)非空xingming会员名称varchar(50)非空xingbie性别varchar(50)非空nianling年龄varchar(50)非空address住址varchar(50)非空dianhua varchar(50)非空del删除状态varchar(50)非空(6)乐器类别表(表4.6)表名:t_l

47、eibie,该表保存了所有乐器的种类。表4.6 乐器类别表表名t_leibie(乐器类别表) 列名描述 数据类型(精度范围)空/非空 约束条件id类别编号int(11)非空主键,默认为0mingcheng类别名称varchar(255)非空del删除状态varchar(255)非空5 系统实现 乐器租赁模块的实现本系统通过SSH框架实现,下面介绍各模块的实现。(1) 查询租借信息主要代码介绍public TChuzu findById(java.lang.Integer id)log.debug(getting TChuzu instance with id: + id);tryTChuzu

48、instance = (TChuzu) getHibernateTemplate().get(com.model.TChuzu, id);return instance; catch (RuntimeException re)log.error(get failed, re);throw re;public List findByExample(TChuzu instance)log.debug(finding TChuzu instance by example);tryList results = getHibernateTemplate().findByExample(instance)

49、;log.debug(find by example successful, result size: + results.size();return results; catch (RuntimeException re)log.error(find by example failed, re);throw re; 添加租借信息主要代码介绍public String chuzuAdd()Map request=(Map)ServletActionContext.getContext().get(request);String s=panduan_kahao_shifoucunzai(kaha

50、o);if(s.equals(bucunzai)request.put(msg, 会员卡号不存在,请重新输入);return msg;TChuzu chuzu=new TChuzu();/chuzu.setId(id);chuzu.setGoodsId(goodsId);chuzu.setKahao(kahao);chuzu.setQizushijian(qizushijian);chuzu.setYajin(yajin);chuzu.setBeizhu(beizhu);chuzu.setShifouhuan(否);chuzu.setHuanshijian();chuzuDAO.save(ch

51、uzu);request.put(msg, 信息添加完毕);return msg; 乐器信息管理主要代码介绍 通过JS语句实现添加、删除操作 function goodsDel(id) if(confirm(您确定删除吗?) window.location.href=/goodsDel.action?id=+id; function goodsPre(id) window.location.href=/goodsPre.action?id=+id; function goodsAdd() var url=/admin/goods/goodsAdd.jsp; window.location.hr

52、ef=url; function out() document.all.tip.style.display = none; 乐器类别管理public String leibieAdd()TLeibie leibie=new TLeibie();leibie.setMingcheng(mingcheng);leibie.setDel(no);leibieDAO.save(leibie);Map request=(Map)ServletActionContext.getContext().get(request);request.put(msg, 类别信息添加完毕);return msg;publ

53、ic String leibieMana()String sql=from TLeibie where Del=no;List leibieList=leibieDAO.getHibernateTemplate().find(sql);Map request=(Map)ServletActionContext.getContext().get(request);request.put(leibieList, leibieList);return ActionSupport.SUCCESS;public String leibieDel()TLeibie leibie=leibieDAO.fin

54、dById(id);leibie.setDel(yes);leibieDAO.attachDirty(leibie);Map request=(Map)ServletActionContext.getContext().get(request);request.put(msg, 类别信息删除完毕);return msg; 5.2 管理员管理模块的实现 管理员登录主要代码介绍 function ccc() if(document.ThisForm.userName.value=) alert(请输入用户名);document.ThisForm.userName.focus();return fa

55、lse; if(document.ThisForm.userPw.value=) alert(请输入密码);document.ThisForm.userPw.focus();return false; loginService.login(document.ThisForm.userName.value,document.ThisForm.userPw.value,document.ThisForm.userType.value,callback); 供应商管理主要代码介绍 function StringBuffer() this._strs = new Array; StringBuffer

56、.prototype.append = function (str) this._strs.push(str); /添加 StringBtotype.pop = function (str) this._strs.pop(str); /删除最后一个 StringBtotype.toString = function() return this._strs.join(,); function queding() var sb = new StringBuffer(); var object=document.getElementsByName(gongying

57、shang_id);/返回的obeject是数组 for(i=0;iobject.length;i+) if(objecti.checked=true) sb.append(objecti.value); window.returnValue = sb.toString(); window.close(); 会员信息管理主要代码介绍 function huiyuanDel(id) if(confirm(您确定删除吗?) window.location.href=/huiyuanDel.action?id=+id; function check() if(document.formAdd.kah

58、ao.value=) alert(请输入卡号); return false; if(document.formAdd.xingming.value=) alert(请输入姓名); return false; document.formAdd.submit(); 6 综合测试测试,是为了发现程序中的错误而执行的过程,本章附了运行界面和测试用例来测试。6.1 乐器租赁系统运行界面以下一组图描述了乐器管理系统的具体步骤和流程。图6.1 用户登录页面上图是管理员登录的界面,输入用户名和密码后进行验证,如果不正确弹出错误提示,如果正确进入管理员管理页面。图6.2 租借信息管理界面上图是租借信息管理界面,

59、选择出租信息管理后的界面,查看租借乐器是否归还。点击归还时计算租借金额,并显示在租借信息中。图6.3 乐器添加界面上图为添加乐器的界面,通过下拉列表选择要添加乐器的类别,输入乐器名称、供应商等信息,点击提交按钮,完成添加。图6.4 供应商管理界面上图为供应商管理的界面,显示供应商的名称、地址等有效信息。图6.5 会员信息管理界面6.2 测试用例本次测试使用了白盒测试,白盒测试又称为结构测试,对所有程序的内部逻辑结构进行测试。下面是我设计的测试用例。 管理员登录测试用例(表6.1) 表6.1 管理员登录测试用例功能特性管理员登录测试目地验证输入正确的用户名和密码测试内容操作描述输入数据期望结果实

60、际结果输入用户名和密码用户名:aaa密码:aaa输入错误输入错误输入用户名和密码用户名:admin密码:123进入用户界面进入用户界面测试结果实际结果与预测结果相同 (2) 会员信息添加测试用例(表6.2) 表6.2 管理员登录测试用例功能特性会员信息添加测试目地验证输入正确格式的 号码测试内容操作描述输入数据期望结果实际结果输入 号码输入 号码:1234567输入错误输入错误输入 号码添加成功添加成功测试结果实际结果与预测结果相同 (3) 供应商添加信息为空测试用例(表6.3) 表6.3 供应商添加信息为空测试用例功能特性供应商添加信息为空测试目地验证输入为空时提示输入信息测试内容操作描述输

温馨提示

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

评论

0/150

提交评论