基于jsp开发的电力收费系统毕业论.doc_第1页
基于jsp开发的电力收费系统毕业论.doc_第2页
基于jsp开发的电力收费系统毕业论.doc_第3页
基于jsp开发的电力收费系统毕业论.doc_第4页
基于jsp开发的电力收费系统毕业论.doc_第5页
已阅读5页,还剩98页未读 继续免费阅读

下载本文档

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

文档简介

2011届毕业生毕业论文题 目: 电力收费系统 院系名称: 信息科学与工程学院 专业班级: 计算机科学与技术专业 学生姓名: xxx 学 号: xxxx 指导教师: xxx 教师职称: xx 2011 年 6 月 3 日3摘 要电力行业是国民经济的基础产业,是人们日常生活的基础。保证持续、高效的电力供应是关系到国计民生的大事。对电力系统管理来说,电费的收取以及管理,是整个电力系统规范化管理的核心。 因此,针对这一现实问题,为满足电业部门的需求,开发研制电力收费系统。电力收费系统是专门对电力部门各用户电费管理及相关工作的管理与维护,而精心开发出的一个收费管理软件。利用计算机可以进行快捷和准确的运算,不需要大量的工作就可以完成每月的电表计费工作。而且利用计算机系统的软件处理,生成各种报表,有利于提高管理决策。根据实际需求,电力收费系统在Windows XP操作系统环境下,以MyEclipse 6.5为开发平台,使用JSP技术设计完成,并使用MySql建设网络数据库。本系统采用JDBC接口连接数据库,整个开发过程是在JSP页面上进行,WEB工具采用Tomcat。通过B/S模式(浏览器/服务器模式)进行前台后台的操作,对用户信息及时地进行添加,删除,查询。本项目的设计思想是对每个用户的用电信息等进行统一管理与维护,利用本系统电力部门可以实现每月网上收取电费,既方便了广大的用户,同时也方便了对供电工作进行管理的工作人员。使电费之收取方式操作简便、对用户进行统一和整体化的管理。关键词: 电费;电力收费;jsp技术;MySql;JDBC Title The electric charge system AbstractElectric power industry is the foundation of the national economy and the basis of Peoples Daily life. To ensure sustainable and efficient power supply is a event to the peoples livelihood. For the power management system, the electricity charge and management, is the core of the whole power standardization management system. Therefore, according to this problem, to meet the needs of the Power department, we develop the electric charge system .Electricity charge system is a charge management software for the Power departments management and maintenance. Making use of the calculator can carry on a fast and accurate operation, dont need a great deal of work and then can complete the electricity charging in every month. And using a computers software, it can generate reports, and improve management decisions.According to the actual demand, the project of the electrical bill system adopts the JSP technology, in Windows under the XP operating system environment, and use MYSQL to build the network database. This system uses JDBC interface to connect the database, the entire development process is in the JSP page, WEB tools use Tomcat. Through the B/S to operate in the front and the background, and users timely to add, delete, query. The design thought of this project is to manage and maintain users information in a unity, and power department could charge online by using this system, its a great convenience for both users and workers who manage the power supply. This system makes it easier and convenient in charging operations, a unified and integrative management of users is also achieved in this project.Keyword: Electricity charges; The electric power charges; JSP Technique; MYSQL;JDBC2目 次1 前言11.1 设计背景11.2 系统目标12 开发环境及相关技术介绍22.1 MyEclipse简介22.2 关系型数据库MySQL简介42.3 Tomcat 服务器介绍52.4 JSP技术介绍52.5 css和Js技术简介62.5.1 Css层叠样式表简介62.5.2 JS技术简介73 需求分析93.1 用户需求分析93.2 功能需求分析93.3 系统可行性分析104 系统概要设计114.1功能实现114.2.电力收费系统各个模块设计124.2.1电力收费系统总体功能模块结构图124.2.2 前台模块结构图134.2.3 后台模块结构图134.3功能实现流程图144.3.1 添加用户功能流程图144.3.2 登录模块功能流程图155 数据库设计165.1 数据库需求分析165.2 数据库概念结构设计165.3 数据库逻辑结构设计205.4 数据库物理结构实现236 详细设计256.1 设计方法与结构的简介256.1.1 面向对象的优点256.1.2 B/S模式256.2 页面设计及代码实现266.2.1 后台功能模块实现266.2.2前台模块功能模块实现37结 论42致 谢43参 考 文 献441 前言1.1 设计背景电力行业关于电费的征收是一项基本的工作,传统的征收方法是依靠各居民小区分片管理,每月依靠人员上门登记电费度数,人工计算出所要收取的费用,然后下发收费发票,居民在收到收费发票的同时进行缴费。对于电力主管部门而言,电量消耗、收费情况的统计都需要大量的人力物力,而且还不能做到很准确。对电力系统管理来说,电费的收取以及管理,是整个电力系统规范化管理的核心。 因此,针对这一现实问题,为满足电业部门的需求,开发研制电力收费系统。电力收费系统是专门对电力部门各用户电费管理及相关工作的管理与维护,而精心开发出的一个收费管理软件。利用计算机可以进行快捷和准确的运算,不需要大量的工作就可以完成每月的计费收费工作。而且利用计算机系统的软件处理,生成各种报表,有利于提高管理决策。1.2 系统目标通过实际的需求分析,开发出本套电力收费系统。本系统主要利用计算机网络进行电费的收取,通过本系统,电力部门完全可以通过网络进行电费收缴,并且对相关报表进行处理。提高电力收费系统的工作效率,充分利用现有资源,包括人力、物力、财力、在管理上达到数据快速准确及时可靠地输出,同时节省人力和时间,使电力部门收费信息化。本系统主要实现以下目标:1、系统采用人机交互的方式,界面美观友好,信息查询灵活、方便,数据存储安全可靠。2、在系统安全方面,用户和管理员要通过登录模块验证成功之后才可以进入系统的主窗体。3、系统最大限度地实现易维护性和易操作性。4、对普通用户和工业用户进行区别操作,更符合电力收费的现状。5、在网上交费使电费的收取方式简便、对用户进行统一和整体化的管理。2 开发环境及相关技术介绍2.1 MyEclipse简介MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。在结构上,MyEclipse的特征可以被分为7类:1. J2EE模型2. WEB开发工具3. EJB开发工具4. 应用程序服务器的连接器5. J2EE项目部署服务6. 数据库服务7. MyEclipse整合帮助对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的J2EE集成开发环境,支持代码编写、配置、测试以及除错。Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括 Java 开发工具(Java Development Tools,JDT)。 Eclipse最初是由IBM公司开发的替代商业软件Visual Age for Java的下一代IDE开发环境,2001年11月贡献给开源社区,现在它由非营利软件供应商联盟Eclipse基金会(Eclipse Foundation)管理。 2003年,Eclipse 3.0选择OSGi服务平台规范为运行时架构。 2007年6月,稳定版3.3发布。2008年6月发布代号为Ganymede的3.4版。Eclipse是著名的跨平台的自由集成开发环境(IDE)。最初主要用来Java语言开发,但是目前亦有人通过插件使其作为其他计算机语言比如C+和Python的开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。Eclipse 最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。IBM提供了最初的Eclipse代码基础,包括Platform、JDT 和PDE。目前由IBM牵头,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到Eclipse项目中,其中包括Borland、Rational Software、Red Hat及Sybase等。Eclipse是一个开发源码项目,它其实是 Visual Age for Java的替代品,其界面跟先前的Visual Age for Java差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。近期还有包括Oracle在内的许多大公司也纷纷加入了该项目,并宣称Eclipse将来能成为可进行任何语言开发的IDE集大成者,使用者只需下载各种语言的插件即可。电力收费系统在MyEclipse工作平台上的分布如图2.1和图2.2所示:、图2.1电力收费系统项目平台分布图图2.2电力收费系统SRC图2.2 关系型数据库MySQL简介MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。MySQL是一个真正的多用户、多线程SQL数据库服务器。SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言。MySQL是以一个客户机/服务器结构的实现,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。SQL是一种标准化的语言,它使得存储、更新和存取信息更容易。例如,你能用SQL语言为一个网站检索产品信息及存储顾客信息,同时MySQL也足够快和灵活以允许你存储记录文件和图像。MySQL 主要目标是快速、健壮和易用。最初是因为我们需要这样一个SQL服务器,它能处理与任何可不昂贵硬件平台上提供数据库的厂家在一个数量级上的大型数据库,但速度更快,MySQL就开发出来。与其他的大型数据库例如Oracle、DB2、SQL Server等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQL不支持视图(已经被列入5.1版的开发计划)、事件等)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。图2.2工作平台上导入的Mysql驱动2.3 Tomcat 服务器介绍Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。Tomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。2.4 JSP技术介绍JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。 JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。 JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点2.5 css和Js技术简介2.5.1 Css层叠样式表简介CSS(Cascading Style Sheet,可译为“层叠样式表”或“级联样式表”)是一组格式设置规则,用于控制Web页面的外观。通过使用CSS样式设置页面的格式,可将页面的内容与表现形式分离。页面内容存放在HTML文档中,而用于定义表现形式的CSS规则则存放在另一个文件中或HTML文档的某一部分,通常为文件头部分。将内容与表现形式分离,不仅可使维护站点的外观更加容易,而且还可以使HTML文档代码更加简练,缩短浏览器的加载时间。层叠样式表解决了一个普遍的问题:HTML 标签原本被设计为用于定义文档内容。通过使用 、 这样的标签,HTML 的初衷是表达“这是标题”、“这是段落”、“这是表格”之类的信息。同时文档布局由浏览器来完成,而不使用任何的格式化标签。由于两种主要的浏览器(Netscape 和 Internet Explorer)不断地将新的 HTML 标签和属性(比如字体标签和颜色属性)添加到 HTML 规范中,创建文档内容清晰地独立于文档表现层的站点变得越来越困难。为了解决这个问题,万维网联盟(W3C),这个非营利的标准化联盟,肩负起了 HTML 标准化的使命,并在 HTML 4.0 之外创造出样式(Style)。目前所有的主流浏览器均支持层叠样式表。层叠样式表的特点有:便于页面的修改、便于页面风格的统一、减少网页的体积。层叠样式表极大地提高了工作效率,样式表定义如何显示 HTML 元素,就像 HTML 3.2 的字体标签和颜色属性所起的作用那样。样式通常保存在外部的 .css 文件中。通过仅仅编辑一个简单的 CSS 文档,外部样式表使你有能力同时改变站点中所有页面的布局和外观。由于允许同时控制多重页面的样式和布局,CSS 可以称得上 WEB 设计领域的一个突破。作为网站开发者,你能够为每个 HTML 元素定义样式,并将之应用于你希望的任意多的页面中。如需进行全局的更新,只需简单地改变样式,然后网站中的所有元素均会自动地更新。2.5.2 JS技术简介JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言。同时也是一种广泛用于客户端Web开发的脚本语言,常用来给HTML网页添加动态功能,比如响应用户的各种操作。它最初由网景公司的Brendan Eich设计,是一种动态、弱类型、基于原型的语言,内置支持类。JavaScript是Sun公司的注册商标。1 Ecma国际以JavaScript为基础制定了ECMAScript标准。JavaScript也可以用于其他场合,如服务器端编程。完整的JavaScript实现包含三个部分:ECMAScript,文档对象模型,字节顺序记号。 Netscape公司在最初将其脚本语言命名为LiveScript来Netscape在与Sun合作之后将其改名为JavaScript。JavaScript最初受Java启发而开始设计的,目的之一就是“看上去像Java”2,因此语法上有类似之处,一些名称和命名规范也借自Java。但JavaScript的主要设计原则源自Self和Scheme3.JavaScript与Java名称上的近似,是当时网景为了营销考虑与Sun公司达成协议的结果。为了取得技术优势,微软推出了JScript来迎战JavaScript的脚本语言。为了互用性,Ecma国际(前身为欧洲计算机制造商协会)创建了ECMA-262标准(ECMAScript)。现在两者都属于ECMAScript的实现。尽管JavaScript作为给非程序人员的脚本语言,而非作为给程序人员的编程语言来推广和宣传,但是JavaScript具有非常丰富的特性。它的特点是:能够具有交互性,能够包含更多活跃的元素,就有必要在网页中嵌入其它的技术。如:Javascript、VBScript、Document Object Model(DOM,文档对象模型)、Layers和 Cascading Style Sheets(CSS,层叠样式表),这里主要讲Javascript。那么Javascript是什么?Javascript就是适应动态网页制作的需要而诞生的一种新的编程语言,如今越来越广泛地使用于Internet网页制作上。 Javascript是由 Netscape公司开发的一种脚本语言(scripting language),或者称为描述语言。在HTML基础上,使用Javascript可以开发交互式Web网页。Javascript的出现使得网页和用户之间实现了一种实时性的、动态的、交互性的关系,使网页包含更多活跃的元素和更加精彩的内容。 运行用Javascript编写的程序需要能支持Javascript语言的浏览器。Netscape公司 Navigator 30以上版本的浏览器都能支持 Javascript程序,微软公司 Internet Explorer 30以上版本的浏览器基本上支持Javascript。微软公司还有自己开发的Javascript,称为JScript。 Javascript和Jscript基本上是相同的,只是在一些细节上有出入。 Javascript短小精悍, 又是在客户机上执行的,大大提高了网页的浏览速度和交互能力。 同时它又是专门为制作Web网页而量身定做的一种简单的编程语言。 JavaScript 使网页增加互动性。JavaScript 使有规律地重复的HTML文段简化,减少下载时间。JavaScript 能及时响应用户的操作,对提交表单做即时的检查,无需浪费时间交由 CGI 验证。JavaScript 的特点是无穷无尽的,只要你有创意。3 需求分析3.1 用户需求分析 电力行业是国民经济的基础产业,是人们日常生活的基础,保证持续、高效的电力供应是关系到国计民生的大事,而电费的收取则是电力部门日常工作中的重点之一,如何保证高效、准确是电力部门工作所关注的焦点。 针对电力行业的背景和收费的需求,本项目的设计思想是对每个用户的用户信息、用电信息等等进行统一管理与维护,利用本系统可以实现用电部门网上收取电费,既方便了广大的用户,同时也方便了对供电工作进行管理的工作人员。使电费之收取方式操作简便、对用户进行统一和整体化的管理。协助电费征收管理部门对用电客户基础信息(电费价格设置);抄表(抄表读数输入);收费管理(交费录入、收费查询、统计报表)等进行全面管理。总结用户需求如下: 1)针对普通用户电价和工业用户电价的不同,实现普通用户和工业用户的有区别收费,区别存储电费信息; 2)针对电力部门的日常工作,强化后台的管理功能,实现后台对不同用户统一管理和操作; 3)针对用电用户交费,提供便利,设计了用户网上缴费模块,实现了用户的网银功能; 4)针对用电部门的管理,本系统前台不设置用户注册模块,但是提供用户对初始密码进行修改。3.2 功能需求分析本系统是严格按照国家供电公司农电工作部制定的农村用电管理办法而开发设计的一个多功能的收费管理系统。根据用电部门的具体业务需求可以确定本系统需要实现的功能包括以下九项 :普通用户收费、 工业用户收费、电度录入、条件查询汇总、查询数据、打印单据、用户户头管理、参数维护、系统管理。根据用户特定的需求进行分析,特总结需要实现的功能如下: 1)前台针对用户要实现的功能: a、用户安全登录; b、用户信息显示及初始密码修改; c、用户网银信息显示; d、用户交费;2)后台要实现的功能: a、用户信息管理; b、用户电量录入及汇总; c、管理员信息管理; d、用户网银信息管理; e、管理员安全登录与退出;3.3 系统可行性分析1)硬件、软件上的可行性:目前市场上的计算机软硬件资源都可以满足系统开发的要求。其中运用的主要软件有MyEclipse、Tomcat服务器等,数据库采用MYSQL数据库。2)JSP技术:该技术目前已经十分成熟,功能强大,扩展性好。JSP在网站开发上是个非常理想的技术工具。3)维护操作:工作方便,后台操作方便明了,操作人员可以在短时间内完全掌握维护技术。4 系统概要设计4.1功能实现1) 用户开户管理员通过后台模块登陆对有需求的用户进行开户操作,开户信息包括:自动生成编号、姓名、性别、电话号码、用户地址、开户日期。2) 用电用户查询 操作用户通过用户名,密码登陆验证,跳转到前台操作页面,点击相关按钮查询用电用户信息。成功后会按照规范格式在页面输出相关查询信息。3) 用电用户查询 操作用户通过用户名,密码登陆验证,跳转到前台操作页面,分为普通用户和工业用户两种用户进行缴费,交费后提示缴费成功。4) 管理员添加,查询,删除操作用户 管理员通过用户名,密码登陆验证,跳转到后台操作页面,进行添加、查询、和删除操作用户,对普通用户和工业用户进行管理。5) 管理员进行电费录入 管理员通过用户名,密码登陆验证,跳转到后台操作页面,进行电度的录入。6) 管理员进行报表的打印管理员通过用户名,密码登陆验证,跳转到后台操作页面,点击相关按钮进行操作。成功后会做出提示或者按规范格式输出。报表信息包括:用户编号、姓名、性别、电话号码、用户地址、缴费金额、用电度数、余额、电费征缴日期。4.2.电力收费系统各个模块设计4.2.1电力收费系统总体功能模块结构图 根据之前做的系统概要分析,可以得出本系统前台后台所有功能模块分布情况,具体分布情况一结构图给出:如图4.1所示:用户登录及密码修改电力收费系统前台模块设计后台模块设计用户网银信息管理工业用户查询及交费普通用户查询及交费管理员登录添加查询和删除管理员添加查询和删除工业用户添加查询和删除普通用户用户网银信息管理当月的电度录入图4.2电力收费系统功能模块结构图4.2.2 前台模块结构图 由于前台模块主要是针对用户操作,进行相关信息查询,特规划前台功能如图4.2所示:所有用户前台页面登陆工业用户当月电费信息查询普通用户当月电费信息查询显示工业用户进行交费普通用户进行交费成功退出 图 4.2 前台模块结构图4.2.3 后台模块结构图 由于后台模块主要是针对管理员操作,进行数据库相关操作,特规划后台功能如图4.2所示:操作用户后台首页登录查询显示添加显示管理员操作用户管理用电用户管理添加操作用户查询操作用户删除操作用户查询用电用户及缴费记录删除用电用户及缴费记录删除删除查询图 4.3 后台模块结构图4.3功能实现流程图4.3.1 添加用户功能流程图 后台功能很多,下面主要简介一下用户添加模块的流程图如图4.4所示:图 4.4 添加用户流程图4.3.2 登录模块功能流程图 前台主要针对用户操作,登录模块是主要实现的一块,只有登录用户才有权做其他相关的操作,登录模块的流程图设计如图4.5所示:图4.5用户登录流程图5 数据库设计系统开发过程中,数据库设计占有非常重要的地位,数据库设计的原则是根据系统的整体需求而定的,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。数据库设计(Database Design)是指根据用户的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。数据库设计是建立数据库及应用系统的技术,是信息系统开发和建议中的核心技术。由于数据库应用系统的复杂性,为了支持相关程序运行,数据库设计就变得异常复杂,因此最佳设计不可能一蹴而就,而只能是一种“反复探寻,逐步求精”的过程,也就是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。数据库设计一般包括以下四个部分:数据库需求分析、数据库概念结构设计、数据库逻辑结构设计、数据库物理结构实现。5.1 数据库需求分析通过对电力部门的业务管理和内部管理的流程与内容分析,设计如下的数据项和数据结构。管理员基本信息表,包括数据项有:管理员编号,管理员登录用户名,管理员登录密码。用户信息表,包括数据项有:用户名,用户编号,用户类别,用户性别,联系电话,用户住址,开户日期。工业用户电度信息表,包括数据项有:用户编号,工业电价,当月电度,应收金额。普通用户电度信息表,包括数据项有:用户编号,普通电价,当月电度,应收金额。缴费信息表,包括数据项有:用户编号,缴费日期,缴费金额。用户网银信息表:用户编号,卡上金额,卡上余额。5.2 数据库概念结构设计 根据上面设计规划出来的实体,对各个实体具体的描述E-R图如下:管理员基本信息实体E-R图如图5.1所示:管理员管理员编号用户名密码图 5.1 管理员基本信息实体E-R图用户信息实体,用来存储用户的相关信息具体E-R图如图5.2所示:用户信息表用户名用户编号用户性别用户类别联系电话用户住址开户日期图 5.2 用户信息实体E-R图工业用户电度信息实体,用来存储工业用户收费信息,具体E-R图如图5.3所示:工业用户电度信息用户编号工业电价当月电度应收金额图 5.3 工业用户电度信息实体E-R图普通用户电度信息,用来存储普通用户收费信息,具体实体E-R图如图5.4所示:普通用户电度信息用户编号普通电价当月电度应收金额图 5.4 普通用户信息实体E-R图缴费信息实体,用来存储缴费信息,具体E-R图如图5.5所示:缴费信息表用户编号缴费金额缴费日期图 5.5 缴费信息实体E-R图用户网银信息实体,实现用户网银信息记录,具体E-R图如图5.6所示:用户网银表用户编号卡上金额卡上余额图5.6 用户网银信息实体E-R图分析过系统的实体需求以后,根据每个实体的E-R图创建系统所需的各个表。系统数据库中的所有表及其用途如图5.7所示:图 5.7 数据库db-dianfei中的所有表表5.1 系统数据库中的所有数据表数据表名称用途Admin用来存储管理员的相关信息Users用来存储用户的基本信息CUD用来存储普通用户的电费信息IUD用来存储工业用户的电费信息Charge用来存储用户的缴费信息Money用来存储用户的网银信息5.3 数据库逻辑结构设计根据设计好的E-R图创建数据库的逻辑结构,数据库中各表的数据字典如下:1)Admin(管理员基本信息表)表Admin用于保存管理员的基本信息,该表的结构如表5.2所示:、表 5.2 管理员基本信息表字段名数据类型数据长度是否为空条件KeyANamevarchar20否AIdbigint20否P_KAPasswordvarchar10否2)Users(用户信息表)表Users用于保存用户基本信息,该表的结构如表5.3所示:表 5.3 用户信息表字段名数据类型数据长度是否为空条件KeyUNameVarchar20否UIdBigint20否P_KUSexVarchar2否男/女UClassVarchar20否UAdressVarchar20否UTeleBigint20否UDateDate否CUD(普通用户电度信息表)表CUD用于保存用户电度电费信息,该表的结构如表5.4所示:表 5.4 普通用户电度信息表字段名数据类型数据长度是否为空条件KeyCIdInt11否P_KUIdBigint20否F-KCPriceFloat10否CDegreeFloat10否MoneyFloat10否IUD(工业用户电度信息表)表IUD用于保存用户电度电费信息,该表的结构如表5.5所示:表 5.5 工业用户电度信息表字段名数据类型数据长度是否为空条件KeyIIdInt11否P_KUIdBigint20否F-KIPriceFloat10否IDegreeFloat10否MoneyFloat10否Charge(缴费信息表)表Charge用于保存所有用户的缴费记录,该表的结构如表5.6所示:表 5.6 已发短信信息表字段名数据类型数据长度是否为空条件KeyCIdInt11否P-KUIdBigint20否F-KDateDate否MoneyFloat10否F-K Money(用户网银信息表) 表Money用来保存用户的网银账户信息,该表的结构如表5.7所示表5.7 用户网银信息表字段名数据类型数据长度是否为空条件KeyMIdInt11否P-KUIdBigint20否F-KMMoneyFloat10否RMoneyFloat10否5.4 数据库物理结构实现本系统中主要创建了一个公共类:ConnDao类,位置在.fit.db这个包中。其中,ConnClass类主要用来连接mysql 数据库。下边主要对这个类进行介绍。主要代码如下:package .fit.db;import java.sql.*;public class ConnDao private static final String DRIVER = com.mysql.jdbc.Driver;private static final String URL = jdbc:mysql:/localhost:3306/dianfei;private static final String DBUSER = root;private static final String DBPASSWORD = 4321;static Connection conn = null;/* * 进行数据库连接 * throws ClassNotFoundException * throws SQLException */public static Connection getConnection() throws ClassNotFoundException, SQLExceptionClass.forName(DRIVER);Connection conn=DriverManager.getConnection(URL,DBUSER,DBPASSWORD);return conn;/* * 关闭数据库连接 * throws SQLException * */public void closeDB(Connection conn,PreparedStatement psm,ResultSet rs) throws SQLExceptionif (conn!=null)conn.close();if(psm!=null)psm.close();if (rs!=null)rs.close();public static void main(String args) throws ClassNotFoundException, SQLExceptionConnection conn;try conn=getConnection();System.out.println(连接成功!);PreparedStatement ps=conn.prepareStatement(sp_help product);System.out.println(ps准备成功!);catch(Exception ex)System.out.println(错误啦!); 6 详细设计6.1 设计方法与结构的简介本系统在设计时,采用了面向对象的方法和B/S模式进行设计。6.1.1 面向对象的优点面向对象围绕现实世界的概念来组织模块,采用对象描述问题空间的实体,用程序代码模拟现实世界中的对象,使程序设计过程更自然、更直观。 面向过程是以功能为中心来描述系统,而面向对象是以数据为中心来描述系统。相对于功能而言,数据具有更强的稳定性。 面向对象模拟了对象之间的通信。就像人们之间互通信息一样,对象之间也可以通过消息进行通信。这样,我们不必知道一个对象是怎样实现其行为的,只需通过对象提供的接口进行通信并使用对象所具有的行为功能。面向对象把一个复杂的问题分解成多个能够完成独立功能的对象(类),然后把这些对象组合起来去完成这个复杂的问题。采用面向对象模式就像在流水线上工作,我们最终只需将多个零部件(已设计好的对象)按照一定关系组合成一个完整的系统。这样使得软件开发更有效率。 6.1.2 B/S模式B/S(浏览器/服务器)是由浏览器、Web服务器、应用服务器和数据库服务器组成的多层结构体系。B/S模式具有以下特点:(1) 用户界面简单易用。用户使用单一的浏览器软件,通过鼠标即可访问文本、图像、声音、电影及数据库等信息,特别适合非计算机人员使用。(2) 易于维护与升级。由于客户端无需专用的软件,所以,系统的维护和升级工作简单。(3) 具有良好的开放性。浏览器/服务器结构采用标准的TCP/IP、HTTP协议,能够与遵循这些标准协议的信息系统及其网络很好的结合,具有良好的开放性,保护了用户的投资。(4) 信息共享度高。HTML是数据格式的一种开放标准,目前信息系统中大多数流行的软件均支持HTML。(5) 扩展性好。TCP/IP、HTTP的标准性使得浏览器/服务器结构可直接接入Internet,具有良好的扩展性。(6) 网络适应性强。无论是PSTN、DDN、帧中继、X.25、ISDN、还是CATV、ADSL,浏览器/服务器结构均能适应。(7) 安全性好。防火墙技术保证了浏览器/服务器结构的安全性。6.2 页面设计及代码实现由于本系统针对用户实现功能在于当月电费查收和用户网银信息查看,故从后台功能模块开始介绍,方便演示从给用户上户、当月电费录入到用户交费的

温馨提示

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

评论

0/150

提交评论