基于JSP技术的银行管理系统的毕业设计与实现_第1页
基于JSP技术的银行管理系统的毕业设计与实现_第2页
基于JSP技术的银行管理系统的毕业设计与实现_第3页
基于JSP技术的银行管理系统的毕业设计与实现_第4页
基于JSP技术的银行管理系统的毕业设计与实现_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

基于JSP技术的银行管理系统的毕业设计与实现PAGE2目录TOC\o"3-3"\h\z\t"标题1,1,标题2,2"前言 11需求分析 21.1设计思想 21.2本课题的研究意义 21.3系统设计目的: 31.4系统运行环境 31.4.1系统配置概述 31.4.2JSDK的安装和配置 31.4.3安装和配置Web服务器 41.4.4数据库连接 52相关技术 62.1JSP技术 62.2JavaBean概述 72.3Access2000数据库 83概要设计 93.1模块设计 93.2系统架构图 93.3功能实现思路及设计结构图 103.3.1结构设计流程思路规划图: 103.3.2概念结构设计图: 113.3.3逻辑结构设计 123.4数据库设计 133.4.1数据库技术概述 133.4.2数据表结构 133.5数据表结构关系图 154详细设计与实现 164.1网站设计思想 164.2CSS样式表设计 16基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第1页。4.3模块设计 17基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第1页。4.3.1公共信息管理 174.4.2用户管理模块 235错误调试与处理 275.1NullPinterException异常 275.2NumberFormatException异常 275.3404错误页 285.4乱码显示的处理 286结论 29参考文献 30致谢 31基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第2页。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第2页。基于JSP技术的银行管理系统的设计与实现摘要:本文具体讲述了如何使用JSP技术建立一个银行管理系统的过程。本系统采用JSP+JavaBean的开发模式进行开发,采用ACCESS为后台数据库,以JSPWeb为页面形式,涉及到数据库、网络、Web服务器等方面的技术,实现了较为完备的功能。包括公共信息管理:权限用户管理、机构管理、部门管理、计算机设备管理、计算机检查监督。整个系统具有友好的用户界面,操作简单实用,为银行工作人员提供了一个良好的工作的环境。关键词:JSP;JavaBean;ACCESS2000;银行;安全信息Abstract:HowdidthisarticlenarratespecificallyhasusedtheJSPtechnologytoestablishauniversitystudenttogetemployedseeksemploymentthenetprocess.ThissystemusesJSP+JavaBeanthedevelopmentpatterntocarryonthedevelopment,SQLServer2000isthebackstagedatabase,andtakesJSPWebasthepageform,involvesdatabase,network,Webserverandsoon,Ithasrealizedmorecompletefunction.Toachieveamorecomprehensivefunctions.Includingpublicinformationmanagement:theuseraccessmanagement,institutionalmanagement,departmentalmanagement,computerequipmentmanagement,computerinspectionandsupervision.Theentiresystemisuser-friendlyinterface,simpleandpractical,forthebankstaffwithagoodworkenvironment.基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第3页。Keywords:JSP;JavaBean;SQLServer2000;Applyforajob;Inviteapplicationsforajob基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第3页。前言数据库技术是由传统的文件系统发展而来的,从层次模型、网状模型发展到关系模型。数据库技术是数据管理的最新技术,是计算机科学的一个重要分支,它能指导我们正确地设计数据库系统,它的出现极大地促进了计算机应用的发展。采用数据库技术的原理和方法可以有效地设计实用的数据库系统。一个完整的数据库系统包括数据库管理系统(DBMS),数据库管理员(DBA)、数据库(DB)、应用程序和相应的硬件设施。目前许多数据库管理系统都基于关系模型,关系模型的主要特点是用表格结构表达实体,用键表示实体与实体之间的联系。与层次模型和网状模型相比,关系模型比较简单,容易为初学者接受。关系模型是由若干个关系模式组成的集合,关系模式相当于记录类型,它的实例称为关系。每个关系是一张表格。表格简单,用户易懂,用户只需用简单的查询语句就可以对数据库进行数据操作,并不涉及到存储结构,访问技术等细节。关系模型是数学化的模型,要用到集合论,离散数学等知识。SQL语言是关系数据库的代表性语言,已经得到广泛应用。本文具体讲述了银行管理系统站的建立流程、数据库设计、功能模块的设计,以及每一个功能模块的代码实现方法。本网站采用JSP+JavaBean的开发模式进行开发,系统采用界面与业务逻辑分离的三层结构设计,将业务逻辑封装在JavaBean中,使得系统的安全性、可维护性、可重用性和可扩展性都大大提高。整个网站具有友好的用户界面,操作简单实用,功能较为完备。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第4页。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第4页。1需求分析软件需求分析工作是软件生存期中重要的一步,也是决定性的一步。只有通过软件需求分析,才能把软件功能和性能的总体概念描述为具体的软件需求规格说明,从而奠定软件开发的基础。软件需求的分析和说明对于软件开发工作的成功与否是至关重要的,需求说明的任务是发现、规范的过程。它有益于提高软件开发过程中的能见度,便于对软件开发过程中的控制与管理,便于采用工程方法开发软件,提高软件的质量,便于开发人员、维护人员、管理人员之间的交流、协作,并作为工作成果的原始依据,并且在向潜在用户传递软件功能、性能需求,使其能够判断该软件是否与自己的需求相关。1.1设计思想本系统选题为银行管理系统,是模拟银行的管理开发的。设计的指导思想是一切为使用者着想,界面要美观大方,操作尽量简单明了,而且作为一个实用的管理系统要有要有良好的容错性,在出现误操作时能尽量及时地给出警告,以便用户及时地改正。计算机的资源是受到限制的,因此要充分利用JSP的功能,设计出功能强大的软件,同时要尽可能地减少对系统资源的占用。鉴于本系统的特殊性,还需要本程序有良好的保密性。具体表现为:1.系统应符合银行管理的规定,满足银行相关人员日常使用的需要,并达到操作过程中的直观、方便、实用安全等要求;2.系统采用模块化程序设计方法,即便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护;3.尽量采用现有软硬软硬件环境及先进的管理系统开发方案,从而达到充分利用现在有资源,提高系统开发水平和应用效果的目的。1.2本课题的研究意义基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第5页。通过该银行管理系统使银行的管理工作系统化、规范化、自动化,从而达到提高账户管理效率的目的,使办公人员可以轻松快捷地完成对账户管理的任务。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第5页。1.3系统设计目的:系统设计是整个计算机信息管理系统开发过程中最重要的技术环节,我们要在充分理解用户需求的基础上,用计算机来实现新系统的信息处理逻辑模型中规定的输入、输出及内部处理等多项功能,由不同模块来完成数据流程图中的各个加工,组织各种数据文件的存储,达到用户需求所规定的各项性能指标,并提出经济合理结构良好和高质量的解决新的计算机信息管理系统中各个需要处理的问题的解决方法的系统目标模型。为有利于及时掌握和监控银行员工工作和使用情况,建立和完善银行管理系统,利用信息技术手段,提高管理成效,必须建立全国统一的银行管理系统。中国人民银行将统一开发和建立全国统一银行管理系统,系统将按照集中统一、分级管理的原则实施管理,其主要功能包括:公共信息管理:权限用户管理、机构管理、部门管理、计算机设备管理、计算机检查监督等功能。1.4系统运行环境1.4.1系统配置概述硬件平台:CPU:P41.8GHz;内存:256MB以上。软件平台:操作系统:Windows2000Server;数据库:SQLServer2000;开发工具包:JDKVersion1.4.2;JSP服务器:Tomcat;浏览器:IE5.0,推荐使用IE6.0;分辨率:推荐使用1024*768像素。1.4.2JSDK的安装和配置(1)安装JSDK基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第6页。开发JSP程序需要首先安装免费的Java程序开发工具JAVA2SDK,该程序在SUN公司的网站中有下载。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第6页。下载完成后会得到安装包文件,执行该安装包,将其安装在计算机中。(2)配置JSDKJSDK安装成功后,需要通过配置环境变量才能正常运行。配置步骤如下:A.通过“我的电脑”→“属性”→“高级”→“环境变量”→“系统变量”,打开“环境变量”对话框。B.单击“系统变量”中的【新建】按钮,弹出“新建系统变量”对话框。C.在“新建系统变量”对话框中的“变量名”文本框中输入“JAVA_HOME”,在“变量值”文本框中输入JSDK的安装目录,系统通过该变量识别JSDK目录。D.单击【确定】按钮,将变量添加到系统变量中。E.用类似的方法为系统增加如下变量:CLASSPATH=.;%JAVA_HOME%\lib;PATH=%JAVA_HOME%\bin;CLASSPATH用来指定调用的类包;PATH用来指定Java命令程(Javac,Java等)所在目录。(3)调试JDSK安装和配置完成后,可以测试JSDK是否能够在机器上正常运行。在Windows“命令提示符”窗口中执行javac命令,如果安装和配置成功,会输入javac的帮助信息;如果并没有成功输出,则需要仔细检查JSDK配置。1.4.3安装和配置Web服务器Web服务器负责JSP文件的执行。目前支持JSP的应用服务器较多,如Tomcat、Resin、Websphere、Weblogic、Jboss等。本设计用的web服务器是tomcat。Tomcat是Apache公司组织开发的一种JSP引擎,由于自身具有Web服务器,可以作为独立的Web服务器使用。安装:在Windows平台中从Tomcat网站下载jakarta-tomcat-5.0.28.exe,按照一般的Windows程序安装步骤即可安装好Tomcat,安装时它会自动寻找你的jdk和jre的位置。配置:运行Tomcat需配置TOMCAT_HOME变量为Tomcat的安装目录。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第7页。运行

:设置完毕后就可以运行Tomcat服务器了。启动后在浏览器中输入http://localhost:8080调试,如果可以看到Tomcat的欢迎页面则说明安装成功了。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第7页。1.4.4数据库连接数据库连接对动态网站来说是最为重要的部分,Java中连接数据库的技术是JDBC(JavaDatabaseConnectivity),中文全称是Java数据库连接,它是Java语言数据库操作的商标名。JDBC是用于执行SQL语句的API类包,JDBCAPI为Java开发者使用数据库提供了统一的编程接口。JDBC的关键技术是数据库联接驱动程序,针对这点大量的数据库厂商和第三方开发商支持Java的JDBC的标准,并开发了不同的数据库JDBC驱动程序。本设计采用的是本地ODBC驱动程序。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第8页。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第8页。2相关技术2.1JSP技术JSP是JavaServerPages的缩写,是由Sun公司倡导、许多公司参与,于1999年推出的一种动态网页技术标准。JSP是基于JavaServlet以及整个Java体系的Web开发技术,利用这一技术可以建立安全、跨平台的先进动态网站。这项技术还在不断地更新和人优化中。在传统的HTML网页中加入Java程序片段和JSP标记,就构成了JSP网页。Web服务器在遇到访问JSP网页时,由JSP引擎解释JSP标记和其中的程序片段,生成所请求的内容,然后将结果以HTML格式返回到浏览器。JSP技术具有以下几个显著特点:(1)将内容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来产生页面上的动态内容。产生内容的逻辑被封装在标识和JavaBeans群组件中,并且捆绑在小脚本中,所有的脚本在服务器端执行。如果核心逻辑被封装在标识和Beans中,那么其它人,如Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的产生。在服务器端,JSP引擎解释JSP标识,产生所请求的内容(例如,通过存取JavaBeans群组件,使用JDBC技术存取数据库),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这有助于作者保护自己的代码,而又保证任何基于HTML的Web浏览器的完全可用性。(2)强调可重用的组件绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者EnterpriseJavaBeansTM组件)来执行应用程序所要求的更为复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者或者客户团体所使用。基于组件的方法加速了综合体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。(3)采用标识简化页面开发基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第9页。Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServerPage技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其它方法更难于编码和耗时的功能。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第9页。通过开发定制化标识库,JSP技术是可以扩展的。今后,第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来工作。JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用。作为采用Java技术家族的一部分,以及Java2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。由于JSP页面的内置脚本语言是基于Java编程语言的,而且所有的JSP页面都被编译成为JavaServlet,JSP页面就具有Java技术的所有好处,包括健壮的存储管理和安全性。作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的供应商将JSP支持添加到他们的产品中,客户可以使用自己所选择的服务器工具,更改工具或服务器并不影响当前的应用。2.2JavaBean概述Javabean组件是用java语言编写的,与开发平台无关的,可重用的软件组件,使用标准的方法命名规则,是一个得到业界各广大产商支持的技术。JavaBean组件继承了在java程序重可以看到的平台的无关性。开发人员可以编写出可重用的组件,然后在各个平台上运行。

在jsp页面中使用JavaBean组件的原因是将代码与显示分离。在jsp页面中有负责存取内容和显示的标记,业务逻辑被包含在可重用的组件中,即JavaBean组件。

在jsp页面中,bean标记被用来存取JavaBean.如下所示:<jsp:useBeanid='beaninstancename'scope='page|request|session|application'class="package.calss"type=package.calss/>基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第10页。其中,id用来查找Bean的关键字值,而且在其余脚本中直接作为对象引用来使用,它对字母的大小是敏感的。class是定义改JavaBean对象的类名,它也是大小写敏感的。beanname则是在此bean通过java。bean。beans.instantiantiate()方法类实例化是所需要的参数。它可以通过表达式所计算出的值。type是改Java组件的Java语言类型,默认值与class相同,用来建bean在此教本中的类型与去实现类区分开[4]。

当jsp中使用bean标记时,程序执行的过程如下:

(1)首先程序试图在属性所值的范围(id,scope)中寻找bean。找到后,在jsp脚本中就可以通过改ID来访问bean了。它的类型由type和class来指定。

(2)如果在指定的范围内没有找到bean,又没有给出class和beanname,则将返回java.lang.InstantiationException异常。

(3)如果class被指定,而器指定的非抽象类又具有一个空参数的初始化函数,则bean将实例化并添加到scope指定的范围中。

(4)如果beanname被指定,则bean将由ClassLoader调用java.bean.beans的instantiate()方法来实例化并添加到scope指定的范围中。

(5)beanname是指向从一个被序列化的对象来创建JavaBean的文件名。它与class属性不能同时出现。

(6)如果scope指定为request,则bean将从请求的上下文中通过getAttribute()方法被取出。这也是默认的范围。如果bean是被创建的,它将被存放在当前的请求上下文中。如果bean只需要在当前HTTP请求中被使用,则可使用此范围。

(7)当指定session是bean从当前会话中通过getValue()方法取出。如果bean是被创建的,它被存放在当前的会话中。当bean需要多个HTTP请求中被使用时,应使用此范围。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第10页。2.3Access2000数据库基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第11页。Access2000是Microsoft公司推出的同时面向数据库最终用户和数据库开发人员的关系数据库管理系统,它实现了计算机“易于使用”的特点,即用户只需按照“向导”进行简单操作,就可以设计出一个数据库系统。作为一种数据库软件,Access可以完成以下功能:可以为每一种类型的信息创建一个表,利用表存储相应的信息;可以定义各个表之间的关系;可以利用宏或VisualBasic将各数据库对象连接在一起,形成一个数据库应用系统,而且用户也不需要编写复杂的程序。充分利用Access数据库是关系数据库的特性,仔细分析各类数据之间的关系,创建表并建立表间的关联,使每个表限制到一个主题,避免了重复信息和冗余数据。并且利用Access与VB窗体建立联系,显示表或查询每一个记录的完整信息,一次只录入一组相关的数据。简单明了,提高了基础数据正确性。为使“计划规模”数据库更为实用,又作了进一步的编写工作,利用Access的窗体具有的可与其它应用程序进行链接的功能,创建同步窗体或嵌套窗体,可非常直观地点击不同的按钮,就能进入相应的录入、查询模块,查看所需的信息。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第11页。3概要设计3.1模块设计根据前面对银行管理系统的分析,主要是一个管理系统类的网站。主要功能模块:公共信息管理:主要功能一些计算机的设置,人员使用情况。权限用户管理:主要包括用户管理和添加用户等功能。机构管理:主要是一些机构设置管理,可以创建和删除机构等。部门管理:主要是部分设置管理,可以创建和删除部分信息等计算机设备管理:由于时间有限,尚未开发。计算机检查监督:由于时间有限,尚未开发。功能结构图如下:员工资银行管理系统员工资银行管理系统部门管理机构管理权限用户管理部门管理机构管理权限用户管理公共信息管理工作图3-1功能结构图3.2系统架构图基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第12页。本系统是基于B/S结构实现,采用后台数据库存储前台信息系统简洁方便的管理模式,后台数据库采用性能稳定简洁易用的access数据库,前台客户端采用JSP开发的体系结构,以进行银行内部信息管理,其系统大体架构如下图:基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第12页。用户用户登陆本机后,登陆银行管理系统操作银行管理系统系统后台数据库(3.1系统架构图)3.3功能实现思路及设计结构图观察现阶段信息系统设计方法,针对系统的不同的复杂程度,目前有一些常用的系统设计方法,如瀑布设计方法、自顶向下的设计方法、自下向上的设计方法、螺旋设计方法、逐步细化设计方法和并行设计方法等,根据设计对象复杂程度的不同,可以灵活地选择不同的方法,网站的几个常用开发方法(结构化方法、原型法和面向对象方法),本系统就是采用了结构化方法设计而成,其结构图如下给出.3.3.1结构设计流程思路规划图:基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第13页。结合当前开发普遍采用五大阶段实施的方法,我也把本信息系统设计步骤划分如下,并详细说明了各个步骤设计阶段所用到的技术和方法,其表示图如下:基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第13页。逻辑设计阶段逻辑设计阶段概念设计阶段需求分析阶段物理设计阶段数据库实施阶段综合、收集和分析信息.概念结构的设计(考虑简单、易于用户理解性,我选择了实体—联系方法).逻辑结构的设计、数据模型的优化和总体的规划.设计物理结构(数据库的存储结构和存取方法(本系统选用索引法和聚簇法相结合)).创建数据库、录入测试数据、调试应用程序.(设计步骤图)3.3.2概念结构设计图:基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第14页。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第14页。用户用户隶属隶属使用 使用部门部门发布发布计算计算机隶属隶属文章文章组织组织(数据库设计E-R图)3.3.3逻辑结构设计基本表:文章信息表(文章编号,文章标题,文章副标题,摘要,作者编号,作者姓名,文章发表日期,添加文章的内容)计算机信息表(计算机ID编号,计算机品牌型号,CPU型号,内存,硬盘大小,操作系统,IP地址,MAC地址,使用人,机房号,责任人,用途,购买时间,领用时间,设备类型,删除状态)部门信息表(部门编号,部门名称,所属机构ID编号,用户权限)机构表(机构编号,机构名称,机构说明,上级机构ID编号)员工信息表(工号,姓名,性别,出生日期,所属部门ID编号,职务,密码)基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第15页。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第15页。3.4数据库设计3.4.1数据库技术概述数据库技术是一种计算机辅助管理数据的方法,它研究如何组织和存储数据,如何高效地获取和处理数据。数据管理是指对数据的组织、编码、分类、存储、检索和维护。它是数据处理的中心问题。数据管理方法根据数据管理的特点,其发展可划分为三个阶段:人工管理阶段、文件管理阶段和数据库系统阶段。一个完整的数据库系统是由计算机软硬件系统、数据库、数据库管理系统、应用程序和数据库管理员五个方面组成,其核心是数据库管理系统(DBMS)。数据系统的特点具有:(1)数据结构化可以存储空间,灵活性相对提高,要求在描述数据是描述理数据本身,及描述数据之间的关系。(2)数据共享性高、冗余度低、易扩展数据可以被多个用户,多个应用共享使用,数据共享可以大大减少数据冗余,节余存储空间,避免数据之间的不相容性与不一致性,以适应各种用户的要求。(3)数据独立性高包括用户的应用程序与存储磁盘上的数据库中的数据物理独立性与用户应用程序与数据库的逻辑结构的逻辑独立性。数据库设计(DatabaseDesign)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。数据库的设计通常是以一个已经存在的数据库管理系统为基础的。根据用户需求和业务流程,本系统采用了SQLServer2000数据库管理系统。3.4.2数据表结构本系统用到的主要数据表包括:(1)TF_Article(文章信息表),此表主要用于保存文章的基本信息,如表3-1所示。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第16页。表3-1基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第16页。(2)TF_Computer(计算机信息表),此表主要用于保存计算机的基本信息,如表3-2所示。表3-2(3)TF_Department(部门信息表),此表主要用于保存部门信息的资料,如表3-3所示。表3-3(4)TF_Orgnization(机构信息表),此表用于保存机构信息的资料,如表3-4所示。表3-4基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第17页。(5)TF_UserInfo(用户信息表),此表主要用于保存用户信息,如表3-5所示。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第17页。表3-53.5数据表结构关系图基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第18页。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第18页。4详细设计与实现4.1网站设计思想一个网站在各项需求确定、系统分析和数据库设计都完成后,下一步就可以根据这个网站的特点确定网站的开发模式,然后就可以编写程序代码了。通过对网站的分析可知,本网站属于一个小型项目,完成功能比较简单,基本是对数据的基本操作。因此,准备使用JSP+JavaBean的开发模式进行开发。当用户从浏览器访问网站时,也就是从用户向服务器发出请求时,由JSP来接收这此请求,然后调用JavaBean做具体的数据存取逻辑运算等处理,把结果返回给JSP,JSP把得到的结果通过浏览器返回给用户,整体流程如图4-1所示。BrowserBrowserJSPJavaBean客户端requestcallreturn服务器端responseresponse图4-1JSP+JavaBean开发模式4.2CSS样式表设计CSS是CascadingStyleSheets(层叠样式表单)的简称。更多的人把它称作样式表。顾名思义,它是一种设计网页样式的工具。借助CSS的强大功能,网页将在您丰富的想象力下千变万化。在主页制作时采用CSS技术,可以有效地对页面的布局、字体、颜色、背景和其它效果实现更加精确的控制。只要对相应的代码做一些简单的修改,就可以改变同一页面的不同部分,或者页数不同的网页的外观和格式。CSS的编辑方法同HTML一样,也可以是任何文本编辑器或网页编辑软件,还有专门用来编辑CSS的软件。如果你写的CSS语句是当成外部样式表而在HTML文件中调用,那它的扩展名存成.css就可。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第19页。CSS样式表的作用有:①在几乎所有的浏览器上都可以使用;②以前一些非得通过图片转换实现的功能,现在只要用CSS就可以轻松实现,从而更快地下载页面;③使页面的字体变得更漂亮,更容易编排,使页面真正赏心悦目;④可以轻松地控制页面的布局;⑤可以将许多网页的风格格式同时更新,不用再一页一页地更新了;⑥可以将站点上所有的网页风格都使用一个CSS文件进行控制,只要修改这个CSS文件中相应的行,那么整个站点的所有页面都会随之发生变动。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第19页。在网站整体设计阶段将网站中可能应用的CSS样式保存在一个统一的外部样式表文件中,以便在以后的开发中引用该文件。定义网站整体风格的外部样式表文件不但可以提高代码的重复使用率,还有助于统一网站的整体风格。在网页中引用外部样式表文件的语法如下:<linkhref=”样式表文件名”rel=”stylesheet”>本网站中应用的CSS外部样式表文件有两个,default.css和left.css.4.3模块设计4.3.1公共信息管理公共信息管理包括文章的发布和维护,计算机的设置等。该操作涉及到数据库中的TF_company、TF_Article数据表。处理过程首先建立数据库连接,打开TF_company、TF_Article数据表,将其中文章信息和计算机信息显示出来。其流程图如图4-2所示。是是连接数据库打开数据表TF_company、TF_Article关闭数据库数据库中有数据吗?取出信息将信息按指定格式显示结束开始否基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第20页。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第20页。图4-2流程图界面截图如下:计算机管理基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第21页。添加文章截图如下基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第21页。部分重要代码如下:packagecom.isoftstone.teamfour.forms;importjava.util.ArrayList;importjavax.servlet.http.HttpServletRequest;importorg.apache.struts.action.ActionErrors;importorg.apache.struts.action.ActionForm;importorg.apache.struts.action.ActionMapping;importcom.isoftstone.teamfour.entitys.ArticleEntity;publicclassArtFormextendsActionForm{ //文章编号 privateStringart_ID; //文章标题 privateStringart_Title; //文章副标题基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第22页。 privateStringart_Subhead;基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第22页。 //摘要 privateStringart_Abstract; //作者编号 privateStringauthor_ID; //作者姓名 privateStringauthor_Name; //文章发表日期||查询时文章发表时间范围min privateStringdeliver_Time; //添加文章的内容 privateStringart_Content; //查询时文章发表时间范围max privateStringdeliver_Time_Max; privateArticleEntityarticleEntity; privateArrayListart_list; privatestaticfinallongserialVersionUID=-2870043930675326315L; publicActionErrorsvalidate(ActionMappingmapping, HttpServletRequestrequest){ returnnull; } publicvoidreset(ActionMappingmapping,HttpServletRequestrequest){ this.art_ID=null; this.art_Title=null; this.art_Subhead=null; this.art_Abstract=null; this.author_ID=null; this.author_Name=null; this.deliver_Time=null; this.art_Content=null;基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第23页。 this.deliver_Time_Max=null;基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第23页。 this.articleEntity=null; this.art_list=null; publicStringgetArt_Abstract(){ returnart_Abstract; } publicvoidsetArt_Abstract(Stringart_Abstract){ this.art_Abstract=art_Abstract; } publicStringgetArt_Content(){ returnart_Content; } publicvoidsetArt_Content(Stringart_Content){ this.art_Content=art_Content; } publicStringgetArt_ID(){ returnart_ID; } publicvoidsetArt_ID(Stringart_ID){ this.art_ID=art_ID; } publicStringgetArt_Subhead(){ returnart_Subhead; } publicvoidsetArt_Subhead(Stringart_Subhead){ this.art_Subhead=art_Subhead; } publicStringgetArt_Title(){ returnart_Title; }基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第24页。 publicvoidsetArt_Title(Stringart_Title){基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第24页。 this.art_Title=art_Title; } publicStringgetAuthor_ID(){ returnauthor_ID; } publicvoidsetAuthor_ID(Stringauthor_ID){ this.author_ID=author_ID; } publicStringgetAuthor_Name(){ returnauthor_Name; } publicvoidsetAuthor_Name(Stringauthor_Name){ this.author_Name=author_Name; } publicvoidsetDeliver_Time(Stringdeliver_Time){ this.deliver_Time=deliver_Time; } publicStringgetDeliver_Time(){ returndeliver_Time; } publicStringgetDeliver_Time_Max(){ returndeliver_Time_Max; } publicvoidsetDeliver_Time_Max(Stringdeliver_Time_Max){ this.deliver_Time_Max=deliver_Time_Max; } publicArticleEntitygetArticleEntity(){基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第25页。 基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第25页。 } publicvoidsetArticleEntity(ArticleEntityarticleEntity){ this.articleEntity=articleEntity; } publicArrayListgetArt_list(){ returnart_list; } publicvoidsetArt_list(ArrayListart_list){ this.art_list=art_list; }}4.4.2用户管理模块用户管理包括添加新用户和管理用户等功能,对TF_UserInfo用户表进行添加删除操作。主要是通过一个javabean来完成。UserForm.java代码如下:/**GeneratedbyMyEclipseStruts*Templatepath:templates/java/JavaClass.vtl*/packagecom.isoftstone.teamfour.forms;importjava.util.ArrayList;importjavax.servlet.http.HttpServletRequest;importorg.apache.struts.action.ActionErrors;importorg.apache.struts.action.ActionForm;importorg.apache.struts.action.ActionMapping;importcom.isoftstone.teamfour.entitys.UserEntity;publicclassUserFormextendsActionForm{ /** * */ privatestaticfinallongserialVersionUID=-3125714981820780811L; /* *GeneratedMethods */ //用户工号基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第26页。 privateStringuser_id;基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第26页。 //用户密码 privateStringuser_pwd; // privateStringuser_name; privateStringuser_sex; privateStringuser_birth; privateStringuser_prin; privateStringdep_ID; privateString[]userID; privateUserEntityuserEntity; privateArrayListdep_list; //用户信息类 privateArrayListuser_list; /** *Methodvalidate *@parammapping *@paramrequest *@returnActionErrors */ publicActionErrorsvalidate(ActionMappingmapping, HttpServletRequestrequest){ returnnull; } /** *Methodreset *@parammapping *@paramrequest */ publicvoidreset(ActionMappingmapping,HttpServletRequestrequest){ this.user_id=null; this.user_pwd=null; } publicStringgetUser_id(){ returnuser_id; } publicvoidsetUser_id(Stringuser_id){ this.user_id=user_id; } publicStringgetUser_pwd(){ returnuser_pwd; }基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第27页。 publicvoidsetUser_pwd(Stringuser_pwd){基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第27页。 this.user_pwd=user_pwd; } publicArrayListgetUser_list(){ returnuser_list; } publicvoidsetUser_list(ArrayListuser_list){ this.user_list=user_list; } publicStringgetUser_birth(){ returnuser_birth; } publicvoidsetUser_birth(Stringuser_birth){ this.user_birth=user_birth; } publicStringgetUser_name(){ returnuser_name; } publicvoidsetUser_name(Stringuser_name){ this.user_name=user_name; } publicStringgetUser_prin(){ returnuser_prin; } publicvoidsetUser_prin(Stringuser_prin){ this.user_prin=user_prin; } publicStringgetUser_sex(){ returnuser_sex; } publicvoidsetUser_sex(Stringuser_sex){ this.user_sex=user_sex; } publicStringgetDep_ID(){ returndep_ID; } publicvoidsetDep_ID(Stringdep_ID){ this.dep_ID=dep_ID; } publicArrayListgetDep_list(){ returndep_list; } publicvoidsetDep_list(ArrayListdep_list){ this.dep_list=dep_list;基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第28页。 }基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第28页。 publicUserEntitygetUserEntity(){ returnuserEntity; } publicvoidsetUserEntity(UserEntityuserEntity){ this.userEntity=userEntity; } publicString[]getUserID(){ returnuserID; } publicvoidsetUserID(String[]userID){ this.userID=userID; }}效果图如下:基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第29页。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第29页。5错误调试与处理网页的开发中经常会遇到对异常的处理,特别是在JSP网页经常会遇到异常发生,下面是我在这次设计中遇到的一些比较常见的异常和对异常的处理。5.1NullPinterException异常在开发网站的时候经常会出现NullPinterException异常,如果页面中包含NULL值操作,就会产生这种异常。如果确定在页面中没有NULL值操作,那就要检查一下数据库,有两种可能,一种是连接数据库时语句出现问题,另一种是没有正确配置数据源。5.2NumberFormatException异常NumberFormatException异常是由于对数字的不正确格式化而出现的异常。如下面的代码所示:基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第30页。<%基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第30页。Stringa=”abc”;Integerb=newInteger(a);%>解决这种异常就是要找出程序中把字符格式化成数字的语句,然后修改过来就可以了。如下所示:<%Stringa=”20”;Integerb=newInteger(a);%>5.3404错误页当Tomcat配置成功后,就可以开发第一个程序,例如在webapps文件夹下建立一个text站点,创建了第一个程序index.jsp,可是运行第一个程序却出现了404错误。Tomcat提示用户没有发现text站点,要想让JSP程序正常运行,需要进行一定的配置,具体步骤如下:(1)在Tomcat下的Webapps目录下创建程序目录text。(2)在text下创建目录WEB-INF。(3)在WEB-INF下创建文件web.xml,其内容如下:<?xmlversion=”1.0”encoding=”ISO-8859-1”?><web-app><welcome-file-list><welcome-file>index.jsp</welcome-file></welcome-file-list></web-app>5.4乱码显示的处理出现乱码问题并不是一个异常,当输出的页面为“?”时说明这是中文乱码。这个问题是由于传递中文字符时未设置中文字符集而产生的,可以通过在网页的首位置加入如下代码解决:基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第31页。<%request.setCharacterEncoding(“gb2312”);%>基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第31页。6系统测试为了确保本系统能够正常运行,需要在发布之后做一次较全面的测试。现将具体操作及过程举例说明如下:6.1测试项目在网站开发过程中采用了多种措施保证软件质量,但是实际开发过程中还是不可避免地会产生差错,系统中通常可能隐藏着错误和缺陷,不经周密测试的系统投入运行,将会造成难以想象的后果,因此系统测试是网站开发过程中为保证软件质量必须进行的工作。大量统计资料表明,系统测试的工作量往往占网站开发总工作量的40%以上。因此,我们必须重视测试工作。由于程序中隐藏的缺陷只在特定的环境下才有可靠显露,系统缺陷通常是由于对某些特定情况考虑不周造成的。因此测试不是为了表明程序正确;成功的测试也不是没有发现错误的测试。有意义的软件测试应该是从“破坏”软件系统的角度出发,精心设计最有可以暴露程序系统缺陷的测试方案。因此软件测试的目标应该是以尽可能少的代价和时间找出软件系统中潜在的错误和缺陷。从产品角度看,测试计划中的测试项目包括软件结构中的分系统层、子系统层、功能模块层、程序模块层中的各类模块,从测试本身看,分为单元测试,组合测试,确认测试等。测试对象是随不同阶段而异的,最基本、最初的测试是单元测试,后面的组合测试、确认测试都是以被测过的模块作为测试对象的。(1)单元测试:单元测试也称模块测试或程序测试,单元测试是对每个模块单独进行的,验证模块接口与设计说明书是否一致,对模块的所有主要处理路径进行测试且与预期的结构进行对照,还要对所有错误处理路径进行测试。对源码进行审查,对照设计说明书,表态地检查源程序是否符合功能的逻辑要求,是进行单元测试前的重要工作工。单元测试一般是由程序员完成,也称程序调试。(2)组合测试基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第32页。组合测试也称集成测试或子系统测试,通常采用自顶向下测试和自底向上测试两种测试方法。组合测试的对象是指已经通过单元测试的模块,不是对零散模块进行单个测试,而是用系统化的方法装配和测试软件系统,是一个严格的过程,必须认真地进行,其计划的产生和单元模块测试的完成日期要协调起来,这种测试应在系统目标机上进行,造成系统应用的环境条件,除了开发部分项目负责人参加以外,还应该有相应系统的用户参加,给评审员进行演示。基于JSP技术的银行管理系统的毕业设计与实现全文共36页,当前为第32页。(3)确认测试确认测试是对通过组合测试的软件进行的,这些软件已经存于系统目标设备的介质上,确认测试的目的是表明软件是可以工作的,并且符合“软件需求说明书”中规定的全部功能和性能要求。确认测试是按照这些要求定出的“确认测试计划”进行的。测试工作是由一个独立的组织进行,而且测试要从用户的角度出发。(4)系统测试系统测试是对整体性能的测试,主要解决各子系统之间的数据通信和数据共享问题以及检测系统是否达到用户的实际要求,系统测试的依据是系统分析报告。系统测试应在系统的整个范围内进行,这种测试不只对软件进行,而是对构成系统的硬、软件一起进行。系统测试与建构同时进行或略慢。系统测试需要确认从头到尾的功能正常才算完成,应当尽量避免系统测试延到项目末尾进行。(5)用户验收测试在系统测试完成后,进行用户的验收测试,它是用户在实际应用环境中所进行的真实数据测试。在具体的测试中,一般应遵循以下原则:由程序设计者之外的人进行测试;测试用例应由两部分组成:输入数据和预期输出结果;应选用不合理的输入数据与非法输入测试;不仅要检验程序是否实现预期功能,还应检查程序是否做了不应该做的工作;集中测试容易出错的程序模块;对程序修改以后,必须重新进行测试。6.2测试方法一般来说,对程序测试有两种测试方法:如果已经知道了软件系统应具有的功能,可通过测试来对每个功能是否都能正常使用;如果知道程序的内部工作过程,可以通过测试来检测程序内部是否按照规格说明书的规定正常进行。前一种方法称为黑盒测试

温馨提示

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

评论

0/150

提交评论