基于SSH的宽带业务管理系统设计与实现论文.docx_第1页
基于SSH的宽带业务管理系统设计与实现论文.docx_第2页
基于SSH的宽带业务管理系统设计与实现论文.docx_第3页
基于SSH的宽带业务管理系统设计与实现论文.docx_第4页
基于SSH的宽带业务管理系统设计与实现论文.docx_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

北京邮电大学毕业设计基于ssh的宽带业务管理系统摘 要进入21世纪以来,计算机有了迅速的发展。计算机应用、信息技术全面渗透到了人类社会的各个方面,信息化已成为世界经济和社会发展的大趋势。企业的管理也从人工操作变得更加自动化、智能化和高效化。如果复杂的工作光靠人工来完成,势必浪费很多的时间,而且又很容易出差错。但使用业务管理系统则完全取代了原来一直用人工管理的工作方式,为及时、准确、高效地完成管理工作提供了强有力的工具和管理手段。为了适应现代信息管理,我设计的系统采用了ssh架构、oracle database 10g express edition数据库技术并选用了myeclipse开发工具。本系统的主要功能包括以下几个方面:管理员登录、宽带业务及会员管理、会员信息查询。本文介绍了宽带业务的发展背景、宽带业务管理系统的流程和实现的功能。除此,本文特别解释了整个系统的设计及思想、解决问题的技巧和方案。同时介绍了本系统的开发背景和开发的全过程。关键词:宽带业务;ssh;jsp;oracle;myeclipseibroadband service management system based on sshabstractsince entering the 21st century, the rapid development of computers, computer applications, it comprehensive infiltration of human society in all aspects of information technology to become a world economic and social development trend.the management of enterprises from manual to automated, intelligent and efficient. it completely replaces the working way of artificial management originally and offers a powerful tool and management way to complete management for prompt, accurate , high-efficient .in order to adapt to modern information management. my system made using of technology of java and oracle database 10g edition the skill of database ,and myeclipse is tool of design.the functions of the system are: login of admin, management of broadband business ;management of customer;the query of customers information .the paper mainly introduced the development background , the function and the entire development process of this system .this article especially explain the system design ,the thought of the design ,the impracticable skill and the solution . at the same time,the paper mainly introduced the development background and the entire development process of this system .keywords: broadband business; ssh ; jsp; oracle; myeclipse目 录摘 要iabstractii1 绪论11.1 课题背景11.2 选题意义12 编程环境及相关技术22.1 概述22.2 b/s模式22.3 myeclipse开发工具22.3.1 概述22.3.2 myeclipse 8.5 版本特性32.4 oracle 10g数据库32.4.1 概述32.4.2 oracle 10g数据库特点32.5 tomcat服务器42.5.1 概述42.5.2 tomcat的配置42.6 struts技术52.6.1 概述:52.6.2 struts优势62.6.3 mvc模式62.6.4 struts启动步骤72.7 spring技术72.7.1 spring特性72.7.2 spring框架82.8 hibernate技术92.9 jsp技术102.9.1 概述102.9.2 jsp技术的优势112.9.3 jsp的生命周期112.9.4 jsp+javabean模型122.9.5 jsp中的重要标签133 系统分析与设计153.1 需求分析153.1.1 功能需求153.1.2 性能需求153.2 系统可行性分析163.2.1 技术可行性163.2.2 经济可行性163.2.3 操作可行性163.3 系统流程图设计173.4 系统模块设计173.4 系统数据库设计183.4.1 数据库表设计183.4.2 hibernate的封装与配置193.4.3 连接数据库214 详细设计234.1 ssh的部分实现234.1.1 service层的实现234.1.2 dao层的实现244.2 页面跳转244.3 验证码的实现254.4 jsp指令元素的配置264.5 翻页及首尾页的实现274.6 日历控件的实现285本系统实现的功能325.1 管理员登陆325.2 添加宽带业务335.3 查看宽带业务345.4 添加宽带会员345.5 查看宽带会员355.6 修改会员信息365.7 宽带会员查询36结 论38参考文献39致谢40外文原文41中文翻译52571 绪论1.1 课题背景随着企业管理信息化的发展以及互联网技术的日益进步,网络及计算机的引入使管理跃上了一个新的发展平台。企业的管理也从传统的人工模式变得高效化、自动化、智能化。因而中国企业面对的竞争压力也越来越大。企业要想更好发展,就必须充分利用信息化手段来提高管理效率及市场响应速度。花费适当的时间和资金建立企业信息门户网站并开设互联网业务的办理,并以此来制定长远发展战略。这样可使企业与顾客间的经济活动变得更灵活、更主动。我国宽带产业进入快速成长期,用户数也迅速增长。面对日益激烈的全方位市场竞争,如何提高竞争力、增加客户满意度、减少客户流失、提高效益成为各个从事宽带业务企业首要考虑的问题。1.2 选题意义每一家公司都离不开信息化管理,而业务和用户又是公司的生存之本。所以做好这些信息的管理和维护对企业来说至关重要。维护业务信息的工作就是保存企业产品的基本信息,如业务名称、月租费、小时费率、日限时、月限时。同时,要确保信息的准确性。维护用户的工作则要更复杂一些,因为用户的信息会不断发生变化,所以需要保存的是一个动态的信息,可随时进行修改,以确保信息的一致性。同时,为了方便业务的拓展还必须要快速地查询到用户的相关信息。如果这些复杂的工作只靠人工来完成,势必浪费很多的时间,而且又很容易出差错。因为时间一长,会产生大量的文件和数据,这对于查找、更新和维护这些信息都带来了不少的困难。为了适应现代信息管理,本次设计选取了基于ssh(ssh:struts,spring,hibernate 。以下简称ssh。其中,struts进行流程控制,spring进行业务逻辑处理,hibernate进行数据库操作的封装)的宽带业务管理系统这一课题。旨在通过ssh架构搭建一个宽带业务管理系统,从而使管理人员对宽带业务及用户的相关信息进行规范的管理和快速的查找,提高其工作效率以及准确度。同时也为企业管理找到一种更为便捷、有效、实用的方法和途径。2 编程环境及相关技术2.1 概述1) 系统采用b/s开发模式,使用myeclipse8.5运行环境2) 数据库服务器:oracle 10g3) web服务器:tomcat 6.0.264) 采用的技术:struts,spring,hibernate,jsp,js 下面,将对用到的编程环境及相关技术进行详细的概述。2.2 b/s模式b/s模式(browser/server,浏览器/服务器模式,简称b/s模式),是web兴起后的一种网络结构模式。web浏览器是客户端最主要的应用软件,这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户的电脑上只要安装一个浏览器(browser),如internet explorer等,服务器安装oracle或 sql server等数据库。就可使浏览器通过web server同数据库进行数据交互。这样一来大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本。b/s模式最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,实现了客户端的零维护。从而使系统的扩展变得非常容易。只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如ca证书)后,系统就可以自动分配给用户一个账号进入系统。b/s模式是对c/s模式的一种改进。在这种模式下,软件应用的业务逻辑完全在应用服务器端实现,用户表现完全在web服务器实现,客户端只需要浏览器即可进行业务处理,是一种全新的软件系统构造技术。从另一方面来说,b/s模式是基于网页语言的,与操作系统无关,所以跨平台也是它的优势。随着网页语言以及浏览器的进步,b/s在表现能力上的处理以及运行的速度上越来越快。这种结构更成为当今应用软件的首选体系结构。因而,本宽带业务管理系统选用了b/s开发模式。2.3 myeclipse开发工具2.3.1 概述myeclipse企业级工作平台(myeclipse enterprise workbench,简称myeclipse),是一个十分优秀的用于开发java、j2ee的eclipse插件集,是对eclipseide的扩展,是功能丰富的javaee集成开发环境。它包括了完备的编码、调试、测试和发布功能,完整支持html、struts、jsp、css、javascript、spring、sql、hibernate。利用myeclipse,我们可以在数据库和javaee的开发、发布,以及应用程序服务器的整合方面极大地提高工作效率。myeclipse支持各种开源产品,极大地简化了软件的开发过程,深受开发者喜爱。因此,本宽带业务管理系统选用了myeclipse开发工具。2.3.2 myeclipse 8.5 版本特性1) java事件探查器:支持探查eclipse插件;支持探查精简接口;支持独立启动探查器。2) 对struts 2的支持:可以在任何类型的项目中新增对struts2的支持;新增了对struts2代码的自动完成提示信息。3) 加载模块的自定义功能:可以自定义插件加载;可以管理myeclipse模块。4) 对wtp项目的支持:增强了对报表的支持,升级了birt2.5,并且新增了格式化信息。5) app server:支持jetty7;新增sun app server 9.1;对jboss 4,5,weblogic 9,10,tomcat,glassfish,sun app server重载的改进。2.4 oracle 10g数据库2.4.1 概述oracle 10g (oracle database 10g express edition,简称oracle 10g)数据库是第一套具有无限可伸缩性与高可用性,并可在集群环境中运行商业软件的互联网数据库。具有400多个领先的数据库功能,在集群技术、高可用性、商业智能、安全性、系统管理等方面都实现了新的突破。它是以高级结构化查询语言(sql)为基础的大型关系数据库,通俗地讲它是用方便逻辑管理的语言操纵大量有规律数据的集合。是目前最流行的浏览器/服务器模式(browser/server)中使用的数据库之一。oracle 在其技术白皮书上阐明,oracle 10g数据库关键目标有二:1) 降低管理开销2) 提高性能 oracle 10g的增强有对高可用性的增强、新的 flashback 能力的增强、支持回滚更新操作方面的增强以及对安全性的增强。这便于管理大量的用户。同时,它还增进了 sql 语句、分析功能、 olap 、数据挖掘等方面的能力。对非关系型数据存储的能力也得到了改进。不仅如此,oracle 10g还加强了对开发能力的支持以及对生物信息学( bioinformatics )的支持。2.4.2 oracle 10g数据库特点oracle 10g数据库的突出特点如下:1) 无范式要求,可根据实际系统需求构造数据库。 2) 采用标准的sql结构化查询语言。3) 具有丰富的开发工具,覆盖开发周期的各阶段。4) 具有字符界面和图形界面,易于开发。5) 数据库内模支持多字节码制,支持多种语言文字编码。6) 支持大型数据库,数据类型支持数字、字符、大至4gb的二进制数据,为数据库的面向存储提供数据支持。7) 数据安全级别为c2级(最高级)。8) 具有面向制造系统的管理信息系统和财务系统应用系统。因此,本宽带业务管理系统选用了oracle10g数据库。2.5 tomcat服务器2.5.1 概述tomcat 服务器是一个免费的开放源代码的web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试jsp 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好apache 服务器,可利用它响应对html(标准通用标记语言下的一个应用)页面的访问请求。实际上tomcat 部分是apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与apache 独立的进程单独运行的。当配置正确时,apache 为html页面服务时,tomcat 实际上运行jsp 页面和servlet。另外,tomcat和iis等web服务器一样,具有处理html页面的功能,另外它还是一个servlet和jsp容器,独立的servlet容器是tomcat的默认模式。tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小、扩展性好、支持负载平衡与邮件服务等开发应用系统常用的功能。而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。因此,本宽带业务管理系统选用了tomcat 6.0.26。它在汲取 tomcat 5.5.x优点的基础上,实现了对servlet 2.5和jsp 2.1特性的支持。除此以外做的改进还有:内存的优化使用、有更大的i/o容量。2.5.2 tomcat的配置首先需要下载sdk和tomcat,之后执行sdk和tomcat的安装程序,然后按默认设置进行安装即可。安装sdk以后,需要配置一下环境变量,在我的电脑-属性-高级-环境变量-系统变量中添加以下环境变量(我的sdk安装在c:sdk1.5.0):java_home=c:sdk1.5.0classpath=.;%java_home%libdt.jar;%java_home%libtools.jar;(.;一定不能少,因为它代表当前路径)path=%java_home%bin接着可以找一个简单的java程序(如:test.java)来测试sdk是否已安装成功。打开命令提示符窗口,cd到你的test.java所在目录,然后键入下面的命令javac test.javajava test此时如果看到打印出来this is a test program.的话说明安装成功了,如果没有打印出这句话,你需要仔细检查一下你的配置情况。安装tomcat后,在我的电脑-属性-高级-环境变量-系统变量中添加以下环境变量:(我的tomcat安装在c:tomcat) catalina_home=c:tomcat catalina_base=c:tomcat然后修改环境变量中的classpath,把tomcat安装目录下的commonlib下的(可以根据实际追加)servlet.jar追加到classpath中去,修改后的classpath如下: classpath=.;%java_home%libdt.jar;%java_home%libtools.jar;%catalina_home%commonlibservlet.jar;接着可以启动tomcat,在ie中访问http:/localhost:8888,如果看到tomcat的欢迎页面的话说明安装成功了。建立自己的jsp app目录:1. 到tomcat的安装目录的webapps目录,可以看到root,examples, tomcat-docs之类tomcat自带的目录;2. 在webapps目录下新建一个目录,起名叫kuandai;3. 在kuandai下新建一个目录web-inf,注意,目录名称是区分大小写的;4. web-inf下新建一个文件web.xml,内容如下:my web applicationa application for test.5. 在kuandai下新建一个测试的jsp页面,文件名为index.jsp,文件内容如下:now time is: 6. 重新启动tomcat。7. 打开浏览器,输入http:/localhost:8888/kuandai看到登录页面的话说明就成功了。2.6 struts技术2.6.1 概述:软件开发者开始一个软件项目时,首先也应该构思该软件应用的框架,规划软件模块,并定义这些模块之间的接口和关系。框架可以提高软件开发的速度和效率,并且使软件更便于维护。 对于开发web应用,要从头设计并开发出一个可靠、稳定的框架并不是一件容易的事。然而,随着web开发技术的日趋成熟,在web开发领域出现了一些现成的优秀的框架,开发者可以直接使用它们,struts就是一种不错的选择,它是基于mvc的web应用框架。 struts是apache软件组织提供的一项开放源代码项目,它为java web应用提供了一个通用的框架,尤其适用于开发大型可扩展的web应用。从而使得开发人员可以把精力集中在如何解决实际业务的问题上。此外,struts框架提供了许多可供扩展和定制的地方,使得应用程序可以方便地扩展其框架,来更好的适应用户的实际需求。struts本身是一群经验丰富的web开发专家的集体智慧结晶,在全世界范围内得到广泛运用并得到一致认可。因此对于开发大型复杂的web应用,struts是不错的框架选择。 因此,本宽带业务管理系统选用了struts对程序进行整体的流程控制。2.6.2 struts优势l 连接了过滤器 interceptor :可以通过过滤器实现页面跳转(chain过滤器)、重命名、文件上传下载(fileupload过滤器)、数据验证(validation过滤器)等功能。l 含有type converter 类型转化器,可以进行日期、字体样式的转换。l 基于多个表单验证。通过该功能还可以通过i/o流的操作实现文件上传功能。2.6.3 mvc模式mvc模式(model-view-controller,简称mvc模式),即把一个应用的输入、处理、输出流程按照model、view、controller的方式进行分离,这样一个应用被分成三个层模型层、视图层、控制层 。之前的网站搭建都属于无 mvc模式。该模式用jsp(html+java)搭建一个基本的网站,只可以实现简单的页面跳转并通过建立表单返回用户信息(即href链接以及form表单提交)。再通过servlet进行交互,接收jsp发送来的内容,以此实现简单的网站。而在mvc中通过javabean 、servlet、jsp实现控制功能。通过jsp+javabean 模式实现了 view+controller模式。这样一来大大简化了开发流程。视图(view)代表用户交互界面,对于web应用来说,可以概括为html界面。mvc设计模式对于视图的处理仅限于视图上数据的采集和处理以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型(model)处理。struts中最重要的便为mvc模式,其实质上就是在jsp model的基础上实现的一个mvc框架。mvc框架模型如图2-1所示:图2-1 mvc框架模型l mmodel 模型层:作用是:操作数据库(db);遍历业务逻辑(如:看用户是否存在);执行命令;对控制层之后的数据和行为进行操作。使用javabean处理(servlet通过javabean调用保存的用户信息判断是否符合)。l vview 显示层:该层通过客户端(浏览器)演示信息。即演示model层处理好的结果(如:注册成功登录界面返到view层)。作用在于:可以直接把信息发送给model层;请求、更新model层;发送用户知道已经给控制层;允许控制层返回跳转不同页面。 使用jsp处理。l ccontroller 控制器层:用于对连接用户的各界面进行交互(即执行完哪个操作调到哪个jsp页面)和业务逻辑层的加密。使用servlet 处理。现在人们普遍使用的是struts2。由于struts1只是对servlet进行了简单封装,用户仍需动用session、cookie等对象,为了与java server face(jsf框架 优于struts)竞争,struts2引入了opensympony公司早期的致力于前台页面控制的一个成熟的mvc框架webwork。故而struts2的实质是为struts + webwork。正是由于引入了webwork,所以说struts实现了mvc模式。2.6.4 struts启动步骤1) 找到web.xml。2) 由filter拦截所有有关struts的请求(以.action结尾)并将请求传给struts框架。3) 再由struts框架转发给配置文件(struts.xml)进行处理。4) 通过使用自带的过滤器将请求内容传递给与之相对应的action进行处理。5) 处理结果返回一个string字符串,再通过string字符串找到与之相对应的result,返回到.jsp页面。2.7 spring技术spring是一个开源框架,由rod johnson创建,是为了解决企业应用程序的复杂开发。框架的主要优势就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 j2ee 应用程序开发提供集成的框架。通过使用spring技术管理javabean组件间关系更好地实现其封装业务逻辑处理、数据访问、事务控制的功能。spring完成以前这些只可以由ejb完成。然而,spring的用途不仅限于服务器端的开发。从简单性、可测试性和低耦合的角度而言,任何java应用都可以从spring中受益。2.7.1 spring特性spring是独特的,因为若干个原因:它定位的领域是许多其他流行的framework没有的。spring致力于提供一种方法管理业务对象。它的设计从底部帮助开发人员编写易于测试的代码。spring是用于测试驱动工程的理想framework。不需要一个以上的framework。它是潜在地一站式解决方案,定位于与典型应用相关的大部分基础结构。它也涉及到其他framework没有考虑到的内容。 spring是全面的和模块化的。spring有分层的体系结构,这意味着可以选择使用它孤立的任何部分,因为它的架构是很稳定的。我们可以选择仅仅使用spring来简单化jdbc的使用,或用来管理所有的业务对象。采用强大的基于 javabeans的控制反转(inversion of control)原则的配置管理,使得应用程序的组件更加快捷简易。spring方便集成各种优秀框架。它不排斥各种优秀的开源框架,反而可以降低各种框架的使用难度,spring提供了对各种优秀框架(如struts、hibernate、hessian、quartz等)的直接支持。 spring能消除使用各种各样格式的属性定制文件的需要,在整个应用和工程中,可通过一种一致的方法来进行配置。例如:通过spring,一个特定类不再需要查找属性关键字或系统属性,你可很简单地看到类的javabean属性。倒置控制的使用帮助完成这种简化。因此,本宽带业务管理系统选用了spring对业务逻辑层进行管理。2.7.2 spring框架spring 框架是一个分层架构,由7个定义良好的模块组成。组成spring框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现。每个模块的功能如下:1、核心容器:核心容器提供 spring 框架的基本功能(spring core)。核心容器的主要组件是 beanfactory,它是工厂模式的实现。beanfactory 使用控制反转(ioc) 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。2、spring 上下文:spring 上下文是一个配置文件,向 spring框架提供上下文信息。spring 上下文包括企业服务,例如jndi、ejb、电子邮件、国际化、校验和调度功能。3、spring aop:通过配置管理特性,spring aop 模块直接将面向切面的编程功能集成到了 spring 框架中。所以,可以很容易地使 spring 框架管理的任何对象支持aop。spring aop 模块为基于 spring 的应用程序中的对象提供了事务管理服务。通过使用 spring aop,不用依赖 ejb 组件,就可以将声明性事务管理集成到应用程序中。4、spring dao:jdbcdao抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。异常层次结构简化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。spring dao 的面向 jdbc 的异常遵从通用的 dao 异常层次结构。5、spring orm:spring 框架插入了若干个orm框架,从而提供了 orm 的对象关系工具,其中包括jdo、hibernate和ibatissql map。所有这些都遵从 spring 的通用事务和 dao 异常层次结构。6、spring web 模块:web 上下文模块建立在应用程序上下文模块之上,为基于 web 的应用程序提供了上下文。所以,spring框架支持与 jakarta struts 的集成。web 模块还简化了处理多部分请求以及将请求参数绑定到对象的工作。7、spring mvc 框架:mvc框架是一个全功能的构建 web应用程序的 mvc 实现。通过策略接口,mvc框架变成为高度可配置的,mvc 容纳了大量视图技术,其中包括 jsp、velocity、tiles、itext 和 poi。模型由javabean构成,存放于map;视图是一个接口,负责显示模型;控制器表示逻辑代码,是controller的实现。spring框架的功能可以用在任何j2ee服务器中,大多数功能也适用于不受管理的环境。spring 的核心要点是:支持不绑定到特定 j2ee服务的可重用业务和数据访问对象。毫无疑问,这样的对象可以在不同j2ee 环境(web 或ejb)、独立应用程序、测试环境之间重用。spring框架结构如图2-2所示:图2-2 spring框架2.8 hibernate技术hibernate是中间件(软件),位于应用程序和数据库之间,用于解决面向对象的java应用程序和面向关系的数据库之间的交互问题。它的优势在于摈弃了jdbc中用户只能自己封装对象、用标准sql语句去操作数据库中的表。而是通过orm对象关系映射,方便地在面向对象的java领域和面向关系的数据库领域建立起联系。并自动将需持久化的对象进行持久化(即java应用程序给出的对象)。orm 就是映射是面向对象编程中的对象(object)和关系数据库的关系(relation)的一个映射(mapping)。使用户可以以对象的方式做增、删、改、查的操作。优势在于:现在的软件开发已经是面向对象的了。所有的值、操作都是基于对象的概念。而数据库还是关系数据库,记录的存储还是一条一条的。没有orm之前,都是直接用sql操作数据库,或者使用dao之类的机制进行对象概念到关系数据库概念的转换。而现在有了hibernate中的orm映射开发人员不必管数据库怎么存储,他只要知道要保存的也是一个对象(和他开发的概念一致)就可以了。该框架同时兼备了效率高、性能好、可维护性高。因此,本宽带业务管理系统选用了hibernate对数据层进行处理。hibernate的框架结构如图2-3所示:图2-3 hibernate框架结构hibernate体系结构要素:l pojo实体类(javabean):一定要有无参构造函数,让hibernate自动为用户创建持久化对象(pojo类中对象一般都为持久化对象);和数据库表进行对应;需实现序列化接口l perties(即hibernate.cfg.xml):hibernate的核心配置文件,配置数据库连接信息(用户提供需要连接哪个数据库、驱动、用户名、密码)l xml mapping:(即.hbm.xml):提供需要持久化的对象,并将数据库表和pojo类进行一一对应的配置文件补充说明的一点是:对象持久化就是把内存中的对象永久的保存起来(将对象存储到数据库中),保护对象的状态,方便使用。好处在于:可以解决掉电的问题;共享方便;保证对象安全检索方便。体系中的持久化层,封装了数据访问细节,让业务逻辑层专注于业务逻辑(自动实现数据库中的数据和内存中数据的双向同步更新)。2.9 jsp技术2.9.1 概述jsp (java serverpage,简称jsp)技术提供了一种简单快速的方法来创建显示动态生成内容的web页面。由业界处于领先地位的sun公司制定了相关的jsp技术规范,该规范定义了如何在服务器和jsp页面间进行交互,还描述了页面的格式和语法。jsp页面使用xml标签和scriptlets(一种使用java语言编写的脚本代码),封装了生成页面内容的逻辑。它将各种格式的标签(html或者xml)直接传递回响应页面。通过这种方式,jsp页面实现了页面逻辑与其设计和显示的分离。jsp 技术是java系列技术的一部分。jsp页面被编译成servlet,并可能调用javabeans组件(beans)或 enterprisejavabeans组件(企业beans),以便在服务器端处理。因此,jsp技术在构建可升级的基于web的应用程序时扮演了重要角色。 jsp页面并不局限于任何特定的平台或web服务器上。jsp规范在业界也有着广泛的适应性。jsp技术是行业协作的结果,它的设计是开放的,符合行业标准的,并支持绝大多数的服务器、浏览器和相关工具。由于使用可重用的组件和标签取代了对页面本身脚本语言的严重依赖,jsp技术大大加快了开发的速度。所有jsp的实现均支持以java编程语言为基础的脚本语言,它有与生俱来的可适应性,支持复杂的操作。2.9.2 jsp技术的优势jsp是动态网页技术,是运行在服务器端的应用程序,所以可以接受客户请求、处理客户请求并以html格式显示返回给浏览器(客户端)。它相比之前的servlet技术和html技术的优势在于:l html: 之前的静态网页技术以www传输,由浏览器识别并显示文件。所以用户只能被动地浏览网站设计者提供的内容。因为服务器和用户不能进行交互,所以网页内容不会发生变化,只能由设计者进行更新。jsp:动态网页技术是建立在b/s架构上的服务器端脚本程序。jsp在首次载入时被翻译成servlet文件(*.java),jsp引擎(调用jsp的web容器)调用java编译器将*.java文件编译成*.class文件,然后jsp引擎调用jvm执行*.class文件,将运行结果返回给服务器,服务器按http协议封装响应后返回给客户端。l servlet :由于是将请求放入输出流中返还给客户端,所以只能一句句输出直到生成一个html页面,生成网页十分复杂,用户体验较差。servlet是在java代码中嵌套html代码,擅长做业务逻辑处理。jsp:它是在html中嵌入java代码 ,所以可以直接将一个网页文件返还给用户,对整个网页的修改十分方便。我们一般采用jsp+javabean模型,由javabean做业务逻辑处理。2.9.3 jsp的生命周期jsp的生命周期(运行原理)分为以下阶段:1) 翻译阶段:当容器接受到客户端第一次对jsp的请求后,先判断请求的jsp源文件是否存在。若不存在返回404错误,若存在,将该jsp页面先翻译成一个servlet文件。2) 编译阶段:将servlet源文件编译成一个字节码文件,然后由容器将其装载进虚拟机并实例化。3) 执行阶段:调用servlet中的init()方法、service方法、destory()方法。其中init()方法用于初始化,destroy()方法用于在服务器关闭时销毁。jsp的调用如图2-4所示:图2-4 jsp的调用示意图在jsp的调用过程中需特别说明的是:1) 如果被请求的jsp源文件内容发生变化,那么要重新将jsp文件翻译成servlet文件,再编译、装载和实例化,最后运行servlet文件。做了修改后无需再重新启动服务器,只需刷新页面即可。2) 如果第二次请求jsp时,此时若被请求的jsp文件已经有对应的servlet实例,那么就直接运行该servlet。第二次请求时,前两步不再执行,所以速度会大大提升。2.9.4 jsp+javabean模型1) jsp+javabean模型在运用jsp技术实现web动态交互中主要使用到的是jsp+javabean模型。本系统中也采用了该模型。其工作原理是:当浏览器发出请求时,jsp接收请求访问javabean。若需要访问数据库后端服务器时,则通过javabean连接数据库或后台服务器,进行相应的处理。javabean将处理的结果数据提交给jsp。jsp提取结果并重新组织后,动态产生html页面返回给浏览器。用户从显示的页面中得到交互的结果。jsp+javabean模型如图2-5所示:图2-5 jsp+javabean模型该模型充分利用了jsp技术易于开发动态网页的特点,页面显示层的任务由jsp承担(但它也含有事务逻辑层的内容),javabean主要负责事务逻辑层和数据层的工作。jsp+javabean模型仅依靠一个或几个javabean组件实现具体的应用功能,生成动态内容,其最大的特点是简单易操作。2) javabean组件javabean组件本质上就是一个普通java类,只不过这个类需要遵循一些编码的约定。它可以用来封装业务逻辑处理、数据访问、事务控制。同时它是java中的可重用组件。可重用即不用进行反复创建,只需直接在各jsp页面中调用即可。jsp页面的实现要特别注重对javabean的使用。在jsp页面中,既可以像使用普通类一样实例化javabean类的对象,调用它的方法;也可以利用jsp技术中提供的动作元素来访问javabean。一个标准的javabean组件具有以下几个特性:l 需实现serializable接口l 在实例化javabean对象时,需要提供无参构造器用来调用无参构造方法它是一个公开的(public)类,并提供set ()方法和get ()方法来让外部程序设置和获取javabean的属性。2.9.5 jsp中的重要标签由于jsp中用到的标签有很多,下面仅列举其中较重要的标签,来说明jsp标签的应用。1) jsp + javabean模型下用到的标签:l jsp:usebean语法:作用:用于在jsp页面中初始化一个java实例l jsp:setproperty语法:作用:为javabean实例的属性赋值:当表中名称和对象名称同名时自动进行赋值;不同时,由param提供表当中提供的字段名称,并给属性赋值l jsp:getproperty语法:作用:用于输出javabean实例的属性,拿到属性值后响应输出给客户端。2) base href=”在jsp中这个标签十分重要,在页面跳转时都会用到。在此特别说明其用法:basepath标签的作用是把当前目录的所有路径都定义到webroot根目录下,进行所有跳转时都基于该路径跳转。图2-6 页面间跳转举例用图举例说明:在本系统中若使用base href=”标签后,从addadmin.jsp跳转到同目录下的modifyadmin.jsp,对应代码应为:若不使用该标签,同名目录下的跳转应为。此时不能再写前面的路径,否则跳转目标页为admin/manager/admin/manager/modifyadmin.jsp该标签的使用主要是为了在不同目录下页面的跳转不再使用相对路径,准确度会有所提升。3 系统分析与设计3.1 需求分析需求分析是宽带业务管理系统开发的第一步也是最重要的一步。需求分析就是描述系统的需求,并依此来建立系统模型。分析的根本目的是在开发者和提出需求的人之间建立一种理解和沟通的机制。因此,系统的需求分析应该是开发人员和用户或者客户一起完成的。需求分析要明确系统要服务于哪些用户,对这些用户提供哪些服务等。以下是针对宽带业务管理做出的需求分析: 3.1.1 功能需求本次设计的宽带业务管理系统,主要目标是提高客户管理工作的效率,并实现对会员基本信息、宽带业务信息进行管理、查询及维护的功能。系统开发的总体任务是实现管理的系统化、规范化和自动化。采用面向对象的分析方法对宽带业务管理系统进行功能需求分析,可将需求具体划分为对以下功能的需求:1) 添加宽带业务:管理员在宽带业务添加页面填写相关信息,提交到服务器,其结果是服务器将添加后的宽带业务信息保存到数据库。2) 查看宽带业务信息:管理员输入登录名和密码,登入后可跳出用户所办理的宽带业务。3) 添加宽带会员:管理员在宽带会员添加页面填写相关信息,提交到服务器,其结果是服务器将添加后的宽带会员信息保存到数据库。4) 查看宽带会员信息:管理员输入登录名和密码,登入后可跳出办理宽带业务的用户列表。5) 修改会员信息:对宽带用户的信息进行修改。对不符合要求的会进行错误提示(如两次密码输入不一致时)。其中默认用户名为不可修改项。6) 宽带会员查询:为管理员提供宽带会员查询的功能,管理员输入相关搜索条件,可以在数据库中搜索到相应会员信息。3.1.2 性能需求 首先,系统既要操作简单、直观、灵活,又要易于学习掌握。不仅要满足管理人员对宽带业务、会员信息进行录入、维护等工作,还要简明清晰,尽量有一定推广价值。所以应具备如下性能:1) 界面友好:以清晰,明朗的界面

温馨提示

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

评论

0/150

提交评论