水电缴费管理系统设计与实现

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

郑州工业应用技术学院
课程设计说明书题目:水电缴费管理系统设计与实现
**:**
院(系):信息工程学院
专业班级: 14级计算机科学与技术1班
学号: **********
****:***
成绩:
时间: 2017 年 4 月 15 日至 2017 年 5 月 8 日
郑州工业应用技术学院
课程设计任务书
题目水电缴费管理系统设计与实现
专业、班级14级计算机科学与技术1班学号1401110105姓名田鹏
主要内容:
首先主要说明了系统的研究背景、系统的研究目标以及JSP等相关技术的概述。

接着对需求分析阐述了系统功能和可行性分析,介绍了系统各个功能模块,并描述了系统的用例图和UML活动图,可行性分析介绍了系统开发的必要性和可能性。

然后系统的设计阐述了系统结构设计、数据库的设计。

还有系统的实现主要阐述各个模块实现的功能。

最后则是系统的测试与维护。

基本要求:
1.系统结构,概念结构及数据表的设计;
2.管理员信息管理;
3.用户信息管理;
主要参考资料:
[1]王建华.ASP NET 2.0 动态网站开发技术与实践[M].北京:电子工业出版社,2007.
[2]王珊萨师煊.数据库系统概论[M].北京:高等教育出版社,2006
[3]萨师煊.SQL Server 从入门到精通[M].北京:高等教育出版社,2006
完成期限:2017.4.15-2017.5.8
指导教师签名:
课程负责人签名:
年月日
目录
摘要 (1)
1. 绪论 (2)
1.1系统的研究背景 (2)
1.2系统的研究目标 (2)
1.3相关技术介绍 (2)
1.3.1 JSP简介 (2)
1.3.2 MYSQL简介 (3)
1.3.3 Tomcat简介 (3)
1.3.4 Hibernate概述 (3)
1.3.5 Spring概述 (4)
1.4论文组织结构 (5)
2. 需求分析 (6)
2.1系统功能概述 (6)
2.1.1 用例图描述 (6)
2.1.2 系统活动描述 (8)
2.2可行性分析 (12)
2.2.1 开发的必要性 (13)
2.2.2 开发的可能性 (13)
3. 系统设计 (14)
3.1系统结构设计 (14)
3.2概念结构设计 (15)
3.3数据表设计 (15)
4. 系统实现 (18)
4.1登录模块 (18)
4.2管理员模块 (19)
4.2.1密码管理 (20)
4.2.2水电价格管理 (21)
4.2.3 用户信息管理 (22)
4.2.4 水费管理 (23)
4.2.5 电费管理 (25)
4.2.6管理员管理 (25)
4.3用户模块 (26)
4.3.1 密码管理 (27)
4.3.2 水电信息查询 (27)
4.3.3 个人信息查询 (28)
5. 系统测试与维护 (29)
5.1系统测试概述 (29)
5.2系统测试方法 (29)
5.3系统的测试 (29)
结束语 (30)
参考文献 (31)
摘要
水电缴费是家庭日常生活的重要内容之一,但是目前水电缴费都是集中管理,用户需要不同的账号进行水电费的查询,非常不方便,因此开发一个能够通过统一账户管理、方便用户查询相关信息的水电缴费系统具有一定的实用价值。

系统实现了用户管理、水电费录入、水电费信息查询;用户缴纳水电费、水电费信息查询等功能。

本文首先对系统研究背景、目标以及JSP技术进行了简要的描述;之后通过用例图和活动图对系统进行需求分析,并阐述了本系统实施的可行性;然后对系统进行设计、实现和测试。

关键词:管理系统;缴费;数据库
1. 绪论
1.1 系统的研究背景
当今时代的两个显著特点就是世界经济一体化和以计算机为代表的信息技术的快速发展。

一个组织要在激烈的竞争中保持优势和不断发展,必须对迅速变化的环境灵敏地做出有效地反应。

管理信息系统的应用能够提供这种有效的决策支持。

水电缴费是家庭日常生活的重要内容之一,目前水电缴费都是集中管理,分别由自来水公司和电力公司来管理,用户缴费以及查询需要使用不同的账号信息,这些不便于用户的缴费以及及时便捷地了解缴费情况,针对水电缴费的实际情况,开发一个水电缴费管理系统使得水电信息能够通过统一账户查询和缴费,方便用户使用。

B/S(浏览器/服务器模式)开发模式是现今非常流行的模式之一。

在这种结构下,软件应用的业务逻辑完全在应用服务器端实现,用户操作完全在Web服务器实现,客户端只需要浏览器即可进行业务处理,是一种全新的软件系统构造技术。

这种结构是开发水电缴费管理系统的首选体系结构。

1.2 系统的研究目标
由于原始的收费系统为手工操作,不能及时有效的反应缴费情况,以及不能集中的管理给管理员带来的麻烦。

通过设计和开发水电缴费管理系统,用户能够通过使用统一账号查询和缴纳水电费用,另一方面管理员也能通过个人账号登录系统对用户进行管理,提高水电缴费管理的工作效率。

通过结合实际应用开发一个Web应用系统,培养的软件设计和开发能力,为后续继续学习和工作奠定基础。

水电缴费管理系统是把水电费的信息通过网络信息系统来管理。

首先是方便管理员录入、查询水电费信息以及添加、删除用户;其次是方便用户查询个人的水电信息。

1.3 相关技术介绍
1.3.1 JSP简介
JSP(JavaServer Pages)语言,是一种动态网页技术,JSP技术是在传统的网页HTML文件中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件。

JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。

网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。

JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。

Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,
然后将执行结果连同JSP文件中的HTML代码一起返回给客户。

插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。

JSP与JavaServlet 一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。

1.3.2 MYSQL简介
MySQL是一种关联数据库,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。

这样就增加了速度并提高了灵活性。

由于其体积小、速度快、总体成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

MySQL server的主要特性包括:
⑴使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。

⑵支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统。

⑶既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。

⑷提供用于管理、检查、优化数据库操作的管理工具。

1.3.3 Tomcat简介
Tomcat是Apache软件基金会(Apache Software Foundation) 的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。

由于有了Sun的参与和支持,最新的Servlet和JSP规范总能在Tomcat中得到体现,Tomcat5支持最新的Servlet2.4和JSP2.0规范。

因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。

Tomcat 是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。

1.3.4 Hibernate概述
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了轻量级的对象封装,使Java程序员可以更加便利的使用对象编程思维来操纵数据库。

Hibernate框架是一个完整的持久层解决方案,通过Hibernate的支持,可以通过面向对象的方式进行各种数据库操作,从而取代传统的JDBC数据库操作。

Hibernate技术本质上是一个提供数据库服务的中间件。

它是利用数据库以及其他一些配置文件如hibernate.properties或hibernate.cfg.xml来为应用程序提供数据持久化服务的。

Hibernate具有很大的灵活性,但同时它的体系结构比较复杂,提供了好几种不同的运行方式。

在轻型体系中,应用程序提供JDBC连接,并且自行管理事务,这种方式使用了Hibernate的一个最小子集;在全面解决体系中,对于应用程序来说,所有底层的JDBC/JTA API都被抽象了,Hibernate会替你照管所有的细节。

1.3.5 Spring概述
Spring是一个解决了许多J2EE开发中常见问题并能够替代EJB技术的强大的轻量级框架。

这里所说的轻量级指的是Spring框架本身,而不是指Spring只能用于轻量级的应用开发。

Spring的轻盈体现在其框架本身的基础结构以及对其他应用工具的支持和装配能力。

与EJB这种庞然大物相比,Spring可使程序研发人员把各个技术层次之间的风险降低。

Spring框架的核心是IoC(Inversion of Control,控制反转)/DI (Dependence Injection,依赖注入)机制。

他能使例如Dao组件,业务逻辑组件,以及struts中的Action等组件,能以松耦合的方式在一块,而不是以硬编码的方式组合在一起,spring通过配置文件管理类,通过依赖注入的方式实现通信,从而提高了我们系统的整体性能。

当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。

Spring就是通过控制反转IoC来实现AOP。

Spring框架由七个定义明确的模块组成,且每个模块或组件都可以单独存在,或者与其他一个或多个模块联合实现。

Spring Core Container是一个用来管理业务组件的IoC容器,是Spring应用的核心;Spring DAO和Spring ORM不仅提供数据访问的抽象模块,还集成了对Hibernate、JDO和Ibatis等流行的对象关系映射框架的支持模块,并且提供了缓冲连接池、事务处理等重要的服务功能,保证了系统的性能和数据的完整性;Spring Web模块提供了Web应用的一些抽象封装,可以将Struts、Webwork等Web 框架与Spring整合成为适用于自己的解决方案。

Spring框架可以成为企业级应用程序一站式的解决方案,同时它也是模块化的框架,允许开发人员自由地挑选适合自己应用的模块进行开发。

Spring框架是一个松耦合的框架,框架的部分耦合度被设计为最小,在各个层次上具体选用哪个框架取决于开发者的需要。

1.4 论文组织结构
本文第一部分绪论主要说明了系统的研究背景、系统的研究目标以及JSP等相关技术的概述。

第二部需求分析阐述了系统功能和可行性分析,介绍了系统各个功能模块,并描述了系统的用例图和UML活动图,可行性分析介绍了系统开发的必要性和可能性。

第三部分系统的设计阐述了系统结构设计、数据库的设计。

第四部分系统的实现主要阐述各个模块实现的功能。

第五部分系统的测试与维护。

2. 需求分析
2.1系统功能概述
本系统主要实现了管理员查询、添加、删除用户信息;水电费录入、查询、修改和删除。

用户缴纳水电费和查询水电信息等功能。

其中涉及到的模块有:
(1)登录模块功能:主要是输入的用户名和密码保存并且与数据库中的数据进行比较,只有完全符合才可以登录系统。

(2)管理员模块功能:可以操作水电价格、用户信息和水电录入、缴纳。

①用户信息子模块功能:可以查询、操作用户信息。

②价格子模块功能:主要是对水电费价格的管理。

③水费子模块功能:添加、修改和删除水费缴纳信息。

④电费子模块功能:添加、修改和删除电费缴纳信息。

(3)用户模块:能查看个人信息和缴费信息。

2.1.1 用例图描述
采用用例驱动方法分析需求,首先识别出系统的参与者主要有管理员、用户,每一种参与者都有不同的权限,下面就对整个系统建立用例模型来表达需求:
⑴管理员:登录系统后,能够查看和修改个人信息、修改密码、查看修改、添加和删除用户等。

图2-1 用例图—系统管理员
对以上用例图中的用例进一步描述如下:
①登录:利用用户名和密码进行登录,这个功能是系统管理员的基本功能,
②个人信息管理:系统管理员可以对个人信息进行查看和修改。

③个人密码管理:系统管理员可以修改个人密码。

④水电价格管理:管理员可以添加、修改和删除水电费价格。

⑤水电费管理:管理员可以添加、修改、删除和缴纳水电费。

⑥用户管理:管理员能够添加、查看、删除用户信息。

⑵用户:登录系统后能够查看和修改个人信息、修改密码
图2-2 用例图—用户
①登录:利用用户名和密码进行登录
②个人信息管理:用户可以对个人信息进行查看和修改。

③个人密码管理:用户可以修改个人密码。

④水费管理:用户可以查询到个人的水费缴纳信息。

⑤电费管理:用户可以查询到个人的电费缴纳信息。

2.1.2 系统活动描述
根据对水电缴费管理系统的设计与实现的需求分析,可以将水电缴费管理系统分为六个模块,登陆模块、管理员模块、用户模块、水电费价格模块、水费模块和电费模块。

⑴登录模块,根据自己的用户名和密码选择权限登录,进入相应权限的主页,具体的UML活动图如图2-3所示:
图2-3 登陆模块的UML活动图
⑶价格模块,管理员进入此模块可以查看和修改水电费价格,具体UML活动图如图2-4所示:
图2-4 价格模块的UML活动图
⑷水费管理模块,管理员进入此模块可以查看和修改用户水费信息和缴费,具体的UML活动图如图2-5所示:
图2-5 电费管理模块的UML活动图
(5)电费管理模块,管理员进入此模块可以查看和修改用户电费信息和缴费,具体的UML活动图如图2-6所示:
图2-6 电费管理模块的UML活动图
(6)用户模块,用户进入此模块可以修改密码,查看水电费信息和缴纳,具体的UML活动图如图2-7所示:
图2-7用户模块的UML活动图
2.2 可行性分析
软件需求分析也称为需求分析工程,是软件生命期中重要的一步,也是决定性的一步。

在可行性分析阶段,对开发新系统的基本思想和过程进行了初步分析和论证,对系统的基本功能、性能及开发时间的限制,人员安排、投资情况等做出了客观的分析。

本系统要求实现水电系统的各项基本功能,从安全性和易维护性考虑,选择了Web 实现技术。

简单的说就是将系统做成一种B/S模式,可以让用户通过浏览器直接访问位于服务器上的系统。

服务器端程序的实现技术也很多,本系统选用了当前比较流行的网络编程技术——JSP作为主要实现手段。

JSP作为一种Web实现技术,它的高效并且安全。

这一点正好符合了水电系统所要求的实时性。

除此之外,作为Java平台的一部分,JSP拥有Java语言“一次编写,各处运行”的特点。

所以JSP是实现本系统的最佳技术,它是完全可行的。

2.2.1 开发的必要性
随着计算机应用的不断深入,信息产业的兴起。

各行各业几乎都与计算机有着密切的联系。

近年来,水电费管理也面临着信息化的发展,传统的水电缴纳需要定时段、定点,而且必须分开缴纳。

这完全不符合信息化时代的发展需求,为了方便管理和用户缴纳水电费,开发出新型的水电缴费管理系统势在必行。

2.2.2 开发的可能性
⑴技术可行性:使用现如今已经成熟的JSP技术,系统数据库选择MySQL
Server ,在系统中的核心部分使用JSP技术,实现JSP和MySQL Server的有机集合。

⑵经济可行性:开发水电管理系统属于城市的信息化建设,开发过程所需要的经济费用是极其少的,在使用过程中也只需要浏览器的支持,其他环节并不涉及到经济问题,所以其在经济上是非常可行的,可以使缴费过程更高效快捷。

⑶用户操作可行性:该系统操作简单,用户只需要按照月份就可以进行缴费。

3. 系统设计
3.1 系统结构设计
根据系统需求分析,可以设计出整个水电管理系统的总体结构。

⑴管理员的页面结构设计
图3-1 系统管理员页面的结构图
⑵用户的页面结构设计
图3-2 用户页面的结构图
3.2概念结构设计
图3-3 ER图
3.3数据表设计
数据库是数据库应用程序的重要组成部分。

设计结构合理,功能齐全的数据库对于提高数据库应用程序的开发效率和程序的性能都是非常重要的。

数据库的设计过程大致如下:
⑴根据用户需求,确定数据库中要保存的数据信息。

对客户需求进行分析是数据库设计的第一个阶段。

不断地调查与研究用户需求,了解企业运作流程等系统需求,是设计概念模型的基础。

⑵设计数据的概念模型。

概念模型是按用户的观点来对数据建模。

它是用于进行信息世界建模的工具,对整个数据库的设计具有深刻的影响。

⑶逻辑结构设计。

逻辑结构设计是把概念结构转化为与所采用的数据库管理系统所支持的数据模型相符合的过程。

⑷数据库的实施和维护。

数据库的建立和维护是在完成数据库以后对数据库进行一系列的修改、查询、删除、更新等。

根据以上分析可以设计出本系统的数据库,所用到的数据库表说明如下:
表3-4 管理人员表admin
序号字段名称类型长度主键字段说明备注
1 id int 10 是管理员id号非空
2 username varchar 20 管理员名字
3 password varchar 20 管理员登录密码非空
4 loginname varchar 10 管理员登录名非空
表3-5 用户基本信息表user
序号字段名称类型长度主键字段说明备注
1 id int 10 是用户id号非空
2 username varchar 20 用户名字
3 loginname varchar 50 用户登录名称非空
4 password varchar 20 用户密码非空
5 address varchar 20 用户地址
6 phone varchar 10 电话
1 id int 20 是水费id号非空
2 userid int 30 用户id号非空
3 time date 30 日期非空
4 count int 30 本月水表读数非空
5 beforecount int 30 上月水表读数非空
6 status char 10 缴费状态默认未缴
7 priceid int 10 价格id号非空
表3-7 电表power
序号字段名称类型长度主键字段说明备注
1 id int 20 是电费id号非空
2 userid int 30 用户id号非空
3 time date 30 日期
4 count int 30 本月电表读数非空
5 beforecount int 30 上月电表读数非空
6 status char 10 缴费状态默认未缴
7 priceid int 10 价格id号非空
表3-8 价格表money
1 id int 15 是价格id号非空
2 powerprice float 11 电费单价非空
3 waterpower float 11 水费单价非空
4 time date 10 日期
5 isactive char 10 活动状态n
4. 系统实现
4.1 登录模块
(1)在WEB页面上输入系统首页地址就可以登录到系统。

如图4-1所示
图4-1 登录页面
⑵如果用户名或者密码输入错误就会进入图4-2错误页面
图4-2 错误页面
4.2 管理员模块
以管理员身份登录系统且输入正确的用户名和密码,则进入图4-3所示的管理员界面,否则进入图4-2错误界面。

图4-3 管理员页面
4.2.1密码管理
(1)点击个人信息里的密码管理进入图所示4-4的界面。

图4-4 密码管理页面
(2)把新密码输入进去,点击提交按钮,密码就更改成功了。

还会弹出提示框如图4-5所示。

图4-5 密码修改成功页面
(3)密码如果不匹配,否则警告如图4-6所示。

确认密码和新密码不同报错。

图4-6 密码修改失败页面
4.2.2水电价格管理
(1)点击水电价格管理可进入如图4-7所示页面。

图4-7 水电价格管理页面
(2)图4-7显示了各个月份的水电费价格,如果有用户已经缴纳水电费,那么这个月的水电费价格就不能修改。

点击修改可修改水电费价格信息。

如图4-8所示。

图4-8 水电费价格修改页面
4.2.3 用户信息管理
(1)点击用户信息管理进入用户信息管理页面,如图4-9所示。

图4-9 用户信息管理页面
(2)点击登录名,可以查看用户的详细信息。

图4-10所示页面。

图4-10 用户详细信息页面
(3)点击用户信息编辑进入如图4-11所示。

其中登录名是不能修改的,不可选。

图4-11 用户信息编辑页面
(4)点击用户删除进入如图4-12所示。

第一个用户就被删除了。

图4-12 用户删除辑页面
4.2.4 水费管理
(1)点击水费管理可进入图4-13所示界面。

第一个用户已经缴纳,后面的两个用户没有缴纳。

他下面会显示应付款和需要填写的实付款。

图4-13 水费管理页面
(2)点击实付款,进入图4-14所示界面。

输入的实付款小于应付款也是不能缴费的。

图4-14 缴费错误信息页面
(3)点击输入大于应付款的数值,进入图4-15所示页面。

这次可以看见找零也显示出来了。

图4-15 缴费正确页面
(4)点击未交存按钮,进入图4-16所示页面,正确输入后就可以完成缴费。

图4-16 完成页面
(5)点击第三个用户的未交存按钮,如图4-17所示提示实付款不能为空。

图4-17 缴费不能为空页面页面
(6)输入小于应付款,再点击未交存按钮,就进入4-18所示界面。

显示错误。

图4-18 缴费错误页面
(7)点击导出exel如图4-19所示页面。

图4-19 导出exel页面
4.2.5 电费管理
电费管理跟水费一样,这里不再赘述。

图4-20 电费管理页面
4.2.6管理员管理
(1)点击管理员进入图所示4-21的界面。

默认admin管理员是不能删除的。

图4-21管理员管理页面
(2)点击添加管理员进入图所示4-22的界面。

图4-22 添加页面
(1)点击编辑进入图所示4-23的界面。

图4-23编辑页面
4.3 用户模块
以用户身份登录系统且输入正确的用户名和密码,则进入图4-24所示的用户登录页面,否则进入图4-2错误界面。

图4-24 用户登陆页面
4.3.1 密码管理
点击修改密码进入如图4-25所示页面。

图4-25 用户密码修改页面
4.3.2 水电信息查询
点击水电信息查询进入如图4-26所示页面。

显示了用户的缴费信息。

图4-26 水电费信息页面
4.3.3 个人信息查询
点击个人信息查询进入如图4-27所示页面。

可以查看个人的基本信息,但是登陆名是不可以修改的。

图4-27 个人信息查询页面
5. 系统测试与维护
5.1 系统测试概述
所谓系统测试是根据软件开发各阶段的规约和软件的内部结构,精心设计一批软件测试用例,并利用这些测试用例去运行程序,用来发现软件中不符合软件质量特性要求的过程。

系统测试过程可以看成不断进行排错、测试、修改程序和文档。

然后进行回归测试,直到软件达到用户的质量特性要求的一个循环过程。

5.2 系统测试方法
本系统采用枚举法,把每一种可能出现的情况都列举出来,然后排查出错的地方。

5.3 系统的测试
测试方法:使用不同的用户名和密码进行登录,从而查看系统是否有相应的错误提示,以及成功登录的页面,本系统超级管理员正确的用户名和密码分别是:addmin 和111
⑴使用正确的用户名和密码登录,既用户名:addmin密码:111
⑵使用正确的用户名和错误的密码登录,如用户名:addmin密码:123
⑶使用错误的用户名和正确的密码,如用户名:admin密码:111
⑷使用错误的用户名和错误的密码,如用户名:admin密码:123
预期测试结果:
⑴第1组测试身份验证成功,进入管理员界面
⑵第2组测试提示“用户名或密码错误”,进入错误页面。

⑶第3组测试提示“用户名或密码错误”,进入错误页面。

⑷第4组测试提示“用户名或密码错误”,进入错误页面。

测试结果:和预期结果一样,测试成功。

结束语
本次设计基本上完成了事前所规划的功能模块,登录模块、超级管理员模块、水费管理员模块、电费管理员模块、用户模块。

各个模块功能都齐备,基本完成设计初的要求。

本系统工作总结:
(1)本系统实现了管理员添加、删除用户、录入水电、查看用户水电费信息;用户缴纳水电费、查询水电信息等功能。

(2)本系统是通过WEB访问的,方便快捷,这也是B/S模式的最大优点。

(3)操作简单,上手快,用户容易接受。

然而,本系统还存在一些不足的地方。

比方说没有注重界面美化、管理员不能被添加和删除、只实现一年的缴费功能等。

希望以后有机会可以实现。

相关文档
最新文档