基于SSH的电信计费系统的开发Word格式文档下载.docx

上传人:b****6 文档编号:20409124 上传时间:2023-01-22 格式:DOCX 页数:42 大小:2.77MB
下载 相关 举报
基于SSH的电信计费系统的开发Word格式文档下载.docx_第1页
第1页 / 共42页
基于SSH的电信计费系统的开发Word格式文档下载.docx_第2页
第2页 / 共42页
基于SSH的电信计费系统的开发Word格式文档下载.docx_第3页
第3页 / 共42页
基于SSH的电信计费系统的开发Word格式文档下载.docx_第4页
第4页 / 共42页
基于SSH的电信计费系统的开发Word格式文档下载.docx_第5页
第5页 / 共42页
点击查看更多>>
下载资源
资源描述

基于SSH的电信计费系统的开发Word格式文档下载.docx

《基于SSH的电信计费系统的开发Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于SSH的电信计费系统的开发Word格式文档下载.docx(42页珍藏版)》请在冰豆网上搜索。

基于SSH的电信计费系统的开发Word格式文档下载.docx

J2EE;

jsp;

struts;

spring;

hibernate

第1章概述

1.1课题的背景及意义

当前.在电信领域,由于电信市场的开放和市场竞争的日益激励,为了提高电信企业的服务水平,降低成本,提高效益和客户满意度,电信企业建设和投资的重点已经从网络基础设施转向以电信软件为核心的电信信息基础设施,其中电信运营支撑系统(OSS,OperationSupportSystem)是建设和投资的重中之重。

这也吸引拉越来越多的国内企业甚至国际上的专业公司投入到这个市场上来,带动拉电信运营支撑系统在技术上的飞速发展。

电信运营支撑系统涉及计算机软件技术和通信技术的俩个科学领域,经过国内外几十年的发展,已经形成了自身比较完善的体系结构。

目前发展迅速,应用广泛,技术更新比较会,用“日新月异”来形容一点都不过分。

其实电信运营支撑系统存在的问题归纳起来是缺乏理论的研究和指导,缺乏有效的技术支持,同时电信义务支撑本身又是研究的焦点。

它需要计算机与通信技术的集合,需要具有深厚的通信义务基础的计算机软件人才的参加,电信运营支撑系统目前值得深入研究的内容很多,重点是在如何将最新的计算机软件技术用在电信义务支撑上。

1.2课题内容及目标

将设备的话务控制功能与计费功能相分离,并建立了计费体制与会话/服务控制的直接交互,使计费完全参与到服务的使用过程中。

在这样的体系下,既可以利用独立计费系统的强大能力以提供接近于准实时计费系统的灵活性,又可以利用参与使用过程的实时特性,将欠费成本将到最低。

1.3开发及运行环境

本项目在开发时采用B/S架构,使用Myeclipce7.1的开发环境;

服务器和客户机都采用WindowsXP操作系统;

数据库服务器是Oracle9i;

Web服务器则选用了一个免费的应用服务器软件—Tomcat6.0绿色版。

由于它们的源代码都是可以免费获得的,对于初学者很有帮助。

第2章系统分析和设计

2.1系统设计思想

本系统《电信运营计费系统-NetCtoss》是利用J2EE平台下的WEB技术设计和运行.通过利用C++跟PL/SQL从AAA服务器上采集数据然后整和到中央数据库里,供用户和管理员进行大量的查询帐单和帐户.其中持久层采用封装JDBC的Hibernate框架,数据库采用Oracle9i,并用Struts作为控制器,页面显示需要JSP技术,并且用Spring框架整和,完成企业级应用.

2.1.1系统业务模型

系统业务模型如下2-1图所示:

图2-1系统业务模型图

根据业务模型图我们可以清楚的了解整个系统的流程:

客户通过网络登陆到服务器。

服务器中含有一个配置文件,这个配置文件中包含用户的姓名和密码。

然后服务器根据这个配置文件来验证用户的姓名和密码,每次用户登陆的时候,服务器就会自动在配置文件中查找,看有没有匹配的。

如果有,则让其登入,没有则不受理这个请求。

与此同时,服务器中还有一个文件,是用来记录用户的登陆和退出的时间,和当前登陆的是哪个用户,以便后来在采集数据中使用。

当用户登陆到出租的服务器后,用户就可以进行服务器所提供相应的操作了。

2.1.2业务描述

业务模型描述(3P模型):

Products(产品)

OpenLab在线试验室出租业务

Pricing(定价)

定价一:

OpenLab月租费:

30元,使用费:

3元/小时

定价二:

50元,使用费:

2元/小时

定价三:

……

Promotion(促销)

例如:

一次性购买2年服务,OpenLab月租费和使用费打八折

24元

OpenLab使用费:

2.4元/小时

2.2系统的界面要求分析

系统必须给出一个初始的管理员帐号跟密码,然后管理员在为其他的用户分配帐号跟密码,然后用户就可以登录系统,进入各自的操作界面,因此系统主页面应该能自动进行身份判别,按照访问者的身份自动进入其相应的操作界面。

所以系统的登录截面应该提供最少俩种身份:

1)普通用户

2)管理员

2.3系统的角色及功能分析

1.netct_oss系统应具有三个角色:

(1).管理员

(2).用户

2.netct_oss系统角色的功能分析

1、超级管理员应该具有的功能

1)管理员开通管理:

管理用户登陆NetCTOSS的帐号,包括帐号开通、暂停(加锁)、恢复、删除。

2)管理员资料管理:

管理管理员资料,包括姓名、身份证号码、住址等。

3)管理员权限管理:

改变管理员的各类权限。

2、普通管理员具有的功能

增、删、改、查自己的信息,

2)查看自己的权限,并且根据所具有的权限管理有关内容。

3、用户应该具有的功能

增、删、改、查用户信息

2.4系统的总体流程

总体流程图:

2.5系统的模块划分

2.6NetCtoss系统的功能要求

1>

采集系统:

功能描述:

该系统主要功能是将电信服务器上的计费文件中所有用户的消费记录采集并且整理出来,然后插入到数据库中。

从功能上讲,该系统共分为六个模块,分别是采集模块,入库模块,配置模块,日志模块,备份模块和网络模块。

从部署运行方面讲该采集系统分为客户端和服务器端两个部分。

客户端部署在电信服务器上,用于采集和整理计费文件中的原始记录并把结果发送到服务器端。

服务器端用于接收从客户端发送过来的数据,并持久化到数据库中相应的表中。

2>

整和系统:

功能描述:

该系统负责将数据库中的用户原始的消费数据进行整合形成可供用户和管理查询的帐单,如日清单,月报表,年报表,以及仅供管理员查询的帐务清单,主要用于考察电信服务器的运行情况。

3>

WEB系统:

该系统可供用户和管理员查询相关内容。

通过登录该系统,用户可以完成查询帐单,修改个人信息,浏览电信运营商提供的各种资费服务。

管理员可以完成查询所有用户帐单,修改管理员信息,对用户进行管理(开通,关闭,删除用户帐号),对管理员进行管理(开通,关闭,删除管理员帐号),修改资费项目,查看电信服务器运行情况。

根据以上功能,该系统可分为六个模块,用户管理模块,管理员管理模块,用户自服务模块,帐单管理模块,资费管理模块,帐务管理模块。

2.7系统实体间的联系

系统的实联系图为:

2.8NetCtoss系统的数据处理

1:

采集与整合数据

采集:

资料信息:

用户信息、管理员信息、资费信息、URL信息

数据存储:

计费数据、故障数据、统计数据

明细:

日表、月表、年表

整合:

按小时合并清单表t_detail_X生成所有用户记费数据日表t_day_X;

按天合并日表t_day_X生成所有用户记费数据月表t_month_X;

按月合并月表t_month_X生成所有用户记费数据年表t_year_X;

按小时合并清单表t_detail_X生成所有Lab_IP数据日表t_day;

按天合并日表t_day生成所有Lab_IP数据月表t_month;

按月合并月表t_month生成所有Lab_IP数据年表t_year;

2:

用户帐务信息自查询

(1)用户标识信息:

帐单ID,姓名、帐号、状态(正常/暂停/关闭)、开通日期。

(2)帐务信息:

日期、登录时长、本月费用

(3)服务信息,各种服务信息查询

(4)服务帮助,提供一个亲切的服务界面

(5)帐单明细:

登录时间退出时间时长

3:

用户开通管理:

(1)管理用户登陆OpenLab的帐号,包括帐号开通、暂停(加锁)、恢复、删除。

(2)用户资料管理:

管理用户资料,包括姓名(单位)、身份证号码、住址及资费信息等

4:

管理员管理:

(1)管理员开通管理:

(2)管理员资料管理:

(3)管理员权限管理:

用户自服务管理

用户标识信息:

帐单ID,姓名、帐号、状态(正常/暂停/关闭)、开通日

帐务信息:

服务信息,各种服务信息查询

服务帮助,提供一个亲切的服务界面

帐单明细:

登录时间退出时间时长

帐单管理

整合系统按月生成用户月帐单。

帐单ID,姓名、帐号、状态(正常/暂停/关闭)、联系电话、Email、开通日期.

帐号、日期、登录时长、本月费用

第3章开发环境及开发工具的介绍

3.1JDK概述

JDK中包含了Java开发中心必需的工具和Java程序运行环境(JRE)。

可以从SUN公司网站免费下载JDK1.4.2。

3.1.1安装JDK

JDK的安装特别简单,和安装应用程序软件没什么区别,值得注意的是JDK的安装路径一定要设好,方便以后环境变量的设置。

3.1.2JDK环境变量的配置

安装好JDK后,还需要在环境变量中进行对应的配置。

就以本次毕业设计为例。

JDK安装在D:

\j2sdk1.4.2。

主要进行以下配置:

(1)设置JAVA_HOME环境变量

(2)设置CLASSPATH环境变量

(3)更新PATH环境变量的值

JAVA_HOME表示Java安装目录,其他的应用程序如果需要使用Java运行环境,首先获得JAVA_HOME变量的信息,然后确定执行的路径。

在鼠标右键单击“我的电脑”,在属性栏的高级选项中可以选择环境变量的设置,新建一个系统变量或者用户变量,名称为JAVA_HOME,它的值为D:

如图:

图2.1JAVA_HOME变量设置

然后建立一个CLASSPATH的变量,它表示搜索Java类的路径,这个路径可以包含一些Jar归档文件,也可以是一个目录。

在应用程序执行是,往往会动态地在CLASSPATH中添加一些自己需要的路径,本机上CLASSPATH的值为“.;

d:

\j2sdk1.4.2\lib\tools.jar;

\j2sdk1.4.2\lib\dt.jar;

”(.;

一定不能少)。

图2.2CLASSPATH变量设置

当以上都配置好了,我们可以测试下Java环境是否配置成功。

我们可以在[运行]中进入[命令提示符cmd]下面。

输入java–version回车,看是否能看到当前JDK的版本。

如果看见就配置成功了。

3.2Eclipse概述

Eclipse是以个集成开发环境(IntegratedDevelopmentEnvironment)。

其前身是IBM的VisualAgeforJava(VA4J),IBM投入了3千万美元。

Eclipse是可扩展的体系结构,可以集成不同软件开发供应商开发的产品,将他们开发的工具和组件加入到Eclipse平台中。

随Java应用的广泛,各大主要软件供应商都参与到Eclipse架构开发中,使得Eclipse插件数量与日增加。

其中,IBM的WebSphereStudioWorkbench是突出的例子。

Eclipse平台的免费,架构的成熟,行业协会Eclipse基金会的支持,使得很多的Java开发采用了Eclipse架构。

如今,IBM通过起附属的研发机构ObjectTechnologiesInternational(OTI),继续引领Eclipse开发。

3.2.1Eclipse的结构和内核

插件(plug-in)是遵循一定规范的应用程序结构编写出来的程序,也成为扩展,不同于组件。

Eclipse正是一个精心设计的、可扩展的核心结构。

通过插件的形式,将根据自己需要选择的扩展开发工具集成到Eclipse平台核心。

因此使得可以避免因过去不兼容工具带来的麻烦,降低开发出成本,大幅度提高工作效率。

Eclipse本身作为一个开放源码的软件项目,它主要包含3个子项目:

①平台子项目,②Java开发工具(JDT-java)子项目,③插件开发环境(PDE-plug-in)子项目。

其中,Java开发工具JDT为开发人员提供大量的集成工具集,主要为Java应用程序提供编程接口(API)。

Eclipse软件开发工具箱(SDK)是主要有Eclipse本身的项目软件和其他一些开发源吗的第三方软件组成。

次者,插件开发环境(JDT)则为插件开发和测试提供相应的环境,如:

创建插件清单文件、定义扩展点等。

其他的Java集成开发环境有Jbuilder、WebSpherStudio、NetBeans。

然而Eclipse以其强大的可扩展性和开放性脱颖而出,拥有为数众多的支持者,也被许多大的企业所青睐。

3.3MyEclipse的概述

MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和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集成开发环境,支持代码编写、配置、测试以及除错。

3.4Tomcat概述

Tomcat服务器是当今使用最广泛的Servlet/JSP服务器。

它运行稳定,性能可靠,是学习和中小企业的最佳选择,而且是开源程序,下载免费,大大降低系统的开发成本。

我们可以从http:

//jakarta.apache.org/tomcat下载Tomcat5.0服务器。

3.4.1安装和配置Tomcat

Tomcat安装也很方便。

跟其他的安装软件差不多,主要是Tomcat环境的配置,本次设计Tomcat安装目录是D:

\Tomcat。

安装完成以后,把Tomcat里面的类包(*.jar文件)包含到环境变量的CLASSPATH里面。

这些Jar文件都在D:

\Tomcat\common\lib目录下。

然后运行Tomcat程序,启动Tomcat。

在IE中,输入http:

//127.0.0.1:

8080或者http:

//localhost:

8080。

如果出现Tomcat的欢迎页面,就表示Tomcat的安装和配置是正确的。

测试Tomcat是否安装成功

当Tomcat配置成功以后,就要在%Tomcat%目录下的webapps下面建立一个虚拟目录,来方便将来程序的开发。

本次设计是电信运营支撑系统,所以我们在webapps下面新建立一个叫Netctoss的文件夹,然后使用TomcatAdministratortools来建立关于netctoss的虚拟目录。

这样以后我们的程序就可以在netctoss文件夹下面进行,当设计完成以后,只要在IE里面输入http:

8080/Netctoss就可以看到你所设计的系统程序的实现了[3]。

图2.4TomcatAdministratortool页面和hospital的虚拟目录

3.5Oracle的概述

ORACLE9i是以高级结构化查询语言(SQL)为基础的大型关系数据库,通俗地讲它是用方便逻辑管理的语言操纵大量有规律数据的集合。

是目前最流行的客户/服务器(CLIENT/SERVER)体系结构的数据库之一。

 

 

ORACLE9i作为第一套完整、简单的软件基层结构,展现了前所未有的可扩展性、高性能和应用程序所需要的稳定性,是专门为因特网系统提供的新一代智能型集成应用软件。

 

ORACLE9i增强了ORACLE的能力,使之在低档软硬件平台上用较少的资源就可以支持更多的用户,而在高档平台上可以支持成百上千个用户。

它提供了基于角色(ROLE)分工的安全保密管理。

在数据库管理功能、完整性检查、安全性、一致性方面都有良好的表现。

支持大量多媒体数据,如二进制图形、声音、动画以及多维数据结构等。

提供了与第三代高级语言的接口软件PRO*系列,能在C,C++等主语言中嵌入SQL语句及过程化(PL/SQL)语句,对数据库中的数据进行操纵。

加上它有许多优秀的前台开发工具如POWERBUILD、SQL*FORMS、VISIABASIC等,可以快速开发生成基于客户端PC平台的应用程序,并具有良好的移植性。

ORACLE9i数据库在物理上是存储于硬盘的各种文件。

它是活动的,可扩充的,随着数据的添加和应用程序的增大而变化。

在逻辑上是由许多表空间构成。

主要分为系统表空间和非系统表空间。

非系统表空间内存储着各项应用的数据、索引、程序等相关信息。

第4章技术准备

3.1Java平台企业版(Java2Platform,EnterpriseEdition)

JavaEE是一种用来开发分布式企业软件应用系统的平台。

Java语言从创生之日起,就获得广泛接纳,经历了巨大的发展。

越来越多的技术都成了Java平台的一部分,为了适应不同的需要也开发出了很多全新的API和标准。

最终,Sun公司联合了多家业界巨头,在开放的Java社区组织名义下,把所有与企业开发相关的标准整合起来,构成了JavaEE平台。

对于企业,JavaEE平台有很多优势:

JavaEE为企业级运算的许多领域(比如数据库连接、企业业务组件、面向消息的中间件(MOM)、Web相关组件、通信协议以及互操作性)设立了标准。

JavaEE促进人们基于开放的标准来开发软件;

如此构建的系统实现,出自名门、安全稳固,因此JavaEE构成了一种可靠的技术投资。

JavaEE是一种标准的开放平台,基于此开发的软件组建能够在不同厂商的产品中相互移植,从而避免了被一家厂商锁定。

在软件开发过程中采用JavaEE能够缩短开发周期,使产品尽快投放市场——这是因为,系统地很多底层架构和基础部分都已经有产品厂商按照JavaEE规范标准实现出来了,因此大多数IT企业可以不再开发中间件,集中尽力构建符合自己商业需要的应用。

JavaEE提高了程序员的生产力,因为对于一个会Java语言的程序员来说很容易就能学会基于Java语言的JavaEE技术。

所有企业软件开发能够在JavaEE平台上、利用Java语言完成。

JavaEE增进了现存各种异构系统之间的互操作性。

介于JavaEE平台的这些优势,本项目虽然不是很大,但是可以通过这次开发来理解和熟悉JavaEE平台。

3.2JSP经典设计模式——MVC模式

MVC英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层。

视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet。

随着应用的复杂性和规模性,界面的处理也变得具有挑战性。

一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。

业务流程的处理交予模型(Model)处理。

比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。

模型(Model)就是业务流程、状态的处理以及业务规则的制定。

业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。

业务模型的设计可以说是MVC最主要的核心。

目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件,但它不能作为应用设计模型的框架。

它仅仅告诉你按这种模型设计就可以利用某些技术组件,从而减少了技术上的困难。

对一个开发者来说,就可以专注于业务模型的设计。

MVC设计模式告诉我们,把应用的模型按一定的规则抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计依据。

抽象与具体不能隔得太远,也不能太近。

MVC并没有提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和提高重用性。

我们可以用对象编程来做比喻,MVC定义了一个顶级类,告诉它的子类你只能做这些,但没法限制你能做这些。

这点对编程的开发人员非常重要。

业务模型还有一个很重要的模型那就是数据模型。

数据模型主要指实体对象的数据保存(持续化)。

比如将一张订单保存到数据库,从数据库获取订单。

我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中。

控制(Controller)可以理解为从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。

划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。

控制层并不做任何的数据处理。

例如,用户点击一个连接,控制层接受请求后,并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。

因此,一个模型可能对应多个视图,一个视图可能对应多个模型。

模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。

如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。

因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。

这实际上是一种模型的变化-传播机制。

如图3-1所示是MVC模式的体系结构图。

图3-1MVC模式的体系结构图

如上图所示,用户通过提交请求与Controller组件(通常表现为Servlet)交互。

接着Controller组件实例化Model组件(通常表现为JavaBeans或者类似技术),并且根据应用的逻辑操纵它们。

一旦Mod

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 研究生入学考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1