关于银行贷款类的计算机毕业论文资料.docx
- 文档编号:9328913
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:78
- 大小:1.82MB
关于银行贷款类的计算机毕业论文资料.docx
《关于银行贷款类的计算机毕业论文资料.docx》由会员分享,可在线阅读,更多相关《关于银行贷款类的计算机毕业论文资料.docx(78页珍藏版)》请在冰豆网上搜索。
关于银行贷款类的计算机毕业论文资料
关于银行贷款类的计算机毕业论文
目录
摘 要3
目录5
第一章引言7
1.1论文研究的背景和意义7
1.2国内外研究现状8
1.3研究内容与论文结构9
第二章相关基础理论和技术11
2.1J2EE概述11
2.2MVC开发模式13
2.3Struts16
2.4本章小结18
第三章系统需求分析19
3.1可行性分析19
3.1.1技术可行性19
3.1.2经济可行性20
3.2系统功能需求20
3.2.1客户信息管理功能需求20
3.2.2客户审批授信管理功能需求20
3.2.3贷款发放管理功能需求21
3.2.4贷款风险管理功能需求21
3.2.5贷后管理功能需求21
3.3业务流程分析22
3.4用例建模23
3.5用户概况28
3.6系统性能需求29
3.6.1系统软件属性需求29
3.6.2系统外部接口需求30
3.7本章小结31
第四章系统设计32
4.1系统总体设计32
4.1.1系统设计原则32
4.1.2系统总体架构图33
4.1.3系统总体功能设计34
4.2系统主要功能模块设计36
4.2.1客户信息管理36
4.2.2客户审批授信管理37
4.2.3贷款发放管理38
4.2.4贷款风险管理子模块设计39
4.2.5贷后管理子模块设计40
4.3数据库设计42
4.3.1数据库设计规范42
4.3.2数据库逻辑结构设计43
4.3.3数据库物理结构设计44
4.4本章小结53
第五章系统主要模块实现54
5.1系统运行平台及工具54
5.2客户信息管理模块实现54
5.3客户审批授信管理模块实现60
5.4贷款发放管理模块实现63
5.5贷后管理模块实现65
5.6系统管理模块实现68
第六章总结与展望71
6.1总结71
6.2展望72
参考文献73
致谢75
第一章引言
1.1论文研究的背景和意义
随着我国资本市场的发展和自身经济体制改革的进步,银行业的竞争变得日趋激烈,因此通过引入新的技术和管理制度手段加强科学管理,提升自身竞争力,实现稳定健康的可持续发展已成为中国银行业必须面对的问题,银行业的现代化主要体现在信息化技术在银行日常经营活动中的运用。
利用计算机为主的信息化技术已经渐渐为各种行业所使用,而要求准确而迅速地处理大量客户资料和户口资料的我国的银行业更是早在20世纪50年代后期便开始了信息化的建设。
经过20多年的建设和发展,国内商业银行对信息化的认识已经上升到战略高度,信息技术不再仅仅被看作是模拟传统手工处理、支持业务运作的辅助工具,而是创造核心竞争力、实现业务变革的助推器。
从现实技术环境看,数据大集中完成后,我国银行信息化的基础设施建设框架已经基本构成,各大商业银行基本完成物理和逻辑的数据集中工作,信息系统得到再造。
建立统一的业务应用平台,实现经营模式由“以账务为中心”向“以客户为中心”转变的条件已经成熟[1]。
信息技术被称为推动现代经济增长的发动机和现代社会发展的均衡器,推动着全球产业分工的深化和经济结构的调整,改变着世界市场和世界经济竞争格局。
在金融领域,信息技术的发展和应用所推动的信息化建设,给商业银行的发展带来了深刻的影响[2]。
整体上看,我国银行业信息化处于比较高的水平,与国内其他行业相比,银行业对信息技术的利用程度最深。
但是,在科技手段保障、促进金融服务和管理科学化的深度和广度方面,我们还存在很大差距。
还存在着信息化建设欠缺统一的战略部署、信息化建设的重心定位不够准确,信息技术投资结构不尽合理、对信息化建设的长期性及业务与系统关系的认识存在偏差、信息化建设中安全风险日益突出、银行间系统系统的集成化程度不高,跨行业、跨部门网络尚未形成、信息技术的管理和运行机制不健全等问题仍旧普遍存在。
在过去,困于信息化水平的条件,我国绝大部分银行都是使用半手工半信息化的方式处理贷款审批和发放的工作,这种方式存在效率低、误差率高,潜在风险大等问题,容易给银行造成损失,因此这种传统的信贷管理方式已经远远不能满足银行贷款业务发展的需要。
本文就是在此背景下在研究分析商业银行贷款业务现实发展的基础上,研究通过采用J2EE技术架构构建商业银行贷款管理系统,实现信贷管理的信息化、规范化的要求。
1.2国内外研究现状
从上世纪八十年代起至今,信息化系统在商业银行发展经历了一个从无到有的过程,发达国家从20世纪60年代开始将计算机技术应用于金融业,它先后经过脱机业务处理、联机业务处理、经营决策信息化、业务集成和决策智能化四个发展阶段。
20世纪末,西方发达国家的银行逐渐步入金融信息化发展阶段。
西方发达国家金融信息技术的应用经历了从初始的支持金融业务到运作金融业务、再到改造金融业务的过程,信息技术已成为金融业发展和创新的重要因素[3]。
在西方发达国家,银行信息化建设较好,对信息化系统的建设和发展技术走在世界前列,随着国际经济一体化和银行金融业国际化而带来的激烈的国际竞争,各国银行业纷纷发展和推行实行电子商务和网络银行[4],美国在上世纪90年代开始发展互联网银行,到如今全球已经有多家银行已推出或着手准备提供网络银行的服务内容。
银行在互联网上提供的服务可以分为静态信息、动态信息、帐户信息和在线交易四个阶段。
目前全球1000多家银行几乎全部连入了互联网,在网上建立了自己的网站,制作了网页,其中约有100多家可提供在线银行金融业务和服务,提供动态网页和动态信息的网络银行正在迅速增多。
中国银行信息化的发展程度还处在较低的水平,随着经济的发展和其他产业信息化的提高,经济领域中各个方面均对银行信息化不断提出新要求,我国当前大力推进信息化建设,国有商业银行和各城市银行纷纷建立自己的网上银行系统和业务管理支持系统,信贷业务作为商业银行一个最重要的经营业务以基本实现了信息化、电子化管理,截止2010年第三季度我国网上银行用户数已超过1.6亿,但与此同时由于我国银行信息化建设发展较晚,技术和管理与西方发达国家相比还有一定差距,因此当前我国银行需要不断加强信息化建设水平,从C/S结构下的MIS管理系统过渡到异构性较好的B/S结构,加强应用系统的安全研究和开发。
1.3研究内容与论文结构
商业银行贷款管理系统,简称贷款管理系统,是一个由贷款管理工作人员和计算机组成的用以对信息进行收集、传输、加工、存储、维护和使用的系统。
本文针对银行信贷业务的主要特点,设计了基于J2EE体系结构的商业银行贷款管理系统,系统在Struts框架实现MVC的设计模式,将以往使用C/S架构向B/S架构进行转变,以追求贷款管理系统高效、安全、快捷、稳定的目标。
系统采用Struts框架技术实现MVC的设计模式,表现逻辑层与业务逻辑层相分离。
在系统设计时综合考虑商业银行的贷款业务需求,结合当前现有的技术水平条件,采用J2EE+Struts+SQLServer2000技术来实现。
该系统为信贷人员提供了操作和管理平台,提高了贷款处理效率,控制了贷款风险,且具有很好的移植性和扩展性,因此具有较高的实用价值。
根据前期的准备和后期工作的总结,为了更加有效快速的使该系统与商业银行信贷管理的业务特点结合,以及根据软件工程的设计流程,对于本文的章节安排如下。
第一章主要介绍商业银行贷款管理系统的研究背景和国内外研究现状,研究背景和意义强调在当前系统信息化建设的环境下,本课题研究的重要性。
第二章主要介绍系统开发中采用的相关技术和系统体系结构,相关技术主要介绍了J2EE体系平台、Struts框架、B/S模式架构等技术。
第三章主要分析了商业银行贷款管理系统的业务需求和业务流程,对管理系统的设计原则、数据流图、功能性需求和非功能性需求等内容做了相应的介绍。
第四章描述了商业银行贷款管理系统总体分析与设计。
主要包括该系统软件体系结构设计、总体设计层次图、功能模块的设计、数据库的设计等。
第五章详细说明了商业银行贷款管理系统各主要功能模块设计,包括客户信息管理模块、银行授信额度模块、放款审批模块,涉及到的各个功能模块的实现结果,进行详细的阐述。
第六章总结与展望:
对本文工作进行了全面总结,说明了本文取得的成果,并指出了存在不足和需改进的方向。
第二章相关基础理论和技术
贷款管理信息系统采用结构化的分析方法,基于J2EE平台的MVC的分层体系结构,大量运用当前主流的开发技术的如Struts,AJAX,JSP,Struts等,是一套技术含量较为先进的贷款管理信息系统。
下面详细讨论系统实现需要的几个关键技术:
J2EE、Struts框架和MVC模式。
2.1J2EE概述
J2EE是一套全然不同于传统应用开发的技术架构,J2EE核心是一组技术规范与指南[5],其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,这能够使企业开发者大幅缩短投放市场时间,降低企业开发成本适合作为多层分布式企业应用程序的开发平台。
J2EE为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制:
第一企业可以保留现存的运行设备和机制,由于新的商业需求不断产生,利用已有的企业信息系统的设备和方案,而不是随时根据新的需求变更整体设计方案,一个以渐进、微调的方式建立在已有系统、设备、方案之上的服务器端平台是简单、快捷、高效的。
而基于J2EE平台的特性,在J2EE平台上开发的产品几乎可以在任何操作系统和硬件配置上运行,现有的操作系统和硬件也能继续使用;第二高效的开发效率,J2EE允许系统将一些通用的、繁琐的服务端请求响应交给中间件供应商完成,这样系统开发人员可以集中精力在如何创建商业逻辑上,有效地地缩短了开发的进程,复杂的中间件服务交由高级中间件供应商提供;第三支持异构环境,J2EE作为一种高效、跨平台的开发技术,能够将软件部署在异构环境中,程序具有很强的可移植性,其开发的应用程序不依赖任何特定的操作系统、中间件、硬件,因此设计合理的基于J2EE的程序可以在开发后一次性部署到各种操作系统平台上,构建一个异构企业计算环境对企业来说是十分关键的[6]。
J2EE标准也允许客户订购与J2EE兼容的第三方的现成的组件,把他们部署到异构环境中,节省了由自己制订整个方案所需的费用;第四优秀的可伸缩性,企业选择的服务器端平台必须能提供极佳的可伸缩性去满足那些在他们系统上进行商业运作的大批新客户,而基于J2EE平台的应用程序可可以被大量广泛的被部署到各种操作系统平台上,J2EE领域的供应商提供了更为广泛的负载平衡策略,能消除系统中的瓶颈,允许多台服务器集成部署,这种部署可达数千个处理器,实现可高度伸缩的系统,满足未来商业应用的需要。
第五稳定的可用性:
一个服务器端平台必须能全天候24小时无高效故障的运转以满足公司客户、合作伙伴的需要,因为应用服务请求和响应是没有时间和地域限制的,即使在夜间按计划停机也可能造成严重损失,意外的停机也会有灾难性的后果,J2EE部署到可靠的操作环境中,他们支持长期的可用性[7]。
J2EE使用多层的分布式应用模型,应用逻辑按功能划分为组件,各个应用组件根据他们所在的层分布在不同的机器上。
事实上,sun设计J2EE的初衷正是为了解决两层模式(client/server)的弊端,在传统模式中,客户端担当了过多的角色而显得臃肿,在这种模式中,第一次部署的时候比较容易,但难于升级或改进,可伸展性也不理想,而且经常基于某种专有的协议,通常是某种数据库协议。
它使得重用业务逻辑和界面逻辑非常困难。
现在J2EE的多层企业级应用模型将两层化模型中的不同层面切分成许多层。
一个多层化应用能够为不同的每种服务提供一个独立的层,以下是J2EE典型的四层结构:
第一运行在客户端机器上的客户层组件,第二运行在J2EE服务器上的Web层组件,第三运行在J2EE服务器上的业务逻辑层组件和第四运行在EIS服务器上的企业信息系统(Enterpriseinformationsystem)层软件,
客户层组件,J2EE应用程序可以是基于web方式的,也可以是基于传统方式的;web层组件J2EEweb层组件可以是JSP页面或Servlets.按照J2EE规范,静态的HTML页面和Applets不算是web层组件,web层可能包含某些JavaBean对象来处理用户输入,并把输入发送给运行在业务层上的enterprisebean来进行处理;业务层组件,业务层代码的逻辑用来满足银行,零售,金融等特殊商务领域的需要,由运行在业务层上的enterprisebean进行处理,通常是由enterprisebean从客户端程序接收数据,进行处理并发送到EIS层储存的,这个过程也可以逆向进行[8]。
有三种企业级的bean:
会话(session)beans、实体(entity)beans和消息驱动(message-driven)beans,会话bean表示与客户端程序的临时交互.当客户端程序执行完后,会话bean和相关数据就会消失。
相反,实体bean表示数据库的表中一行永久的记录,当客户端程序中止或服务器关闭时,就会有潜在的服务保证实体bean的数据得以保存.消息驱动bean结合了会话bean和JMS的消息监听器的特性,允许一个业务层组件异步接收JMS消息;企业信息系统层,企业信息系统层处理企业信息系统软件包括企业基础建设系统例如企业资源计划(ERP)、大型机事务处理、数据库系统和其它的遗留信息系统,例如J2EE应用组件可能为了数据库连接需要访问企业信息系统等[9]。
2.2MVC开发模式
MVC英文即(Model.View.Controller),即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三层——模型层、视图层、控制层。
MVC三层结构采用“分而治之”的思想,把问题划分开来各个解决,易于控制,易于延展,易于分配资源[10]。
MVC设计模式作为一个很好创建软件的途径,它所提倡的一些原则,像内容和显示互相分离可能比较好理解。
但是如果你要隔离模型、视图和控制器的构件,你可能需要重新思考你的应用程序,尤其是应用程序的构架方面。
如果你肯接受MVC,并且有能力应付它所带来的额外的工作和复杂性,MVC将会使你的软件在健壮性,代码重用和结构方面上一个新的台阶[11]。
MVC模式是软件设计中的典型系统架构设计模式,依据MVC的设计思想可以将一个复杂的应用系统分解为模型、视图和控制器3部分,分别对应于应用系统中的业务逻辑处理和业务数据、用户操作界面、用户请求的处理和数据访问的控制、管理和调度操作。
MVC模式是用来帮助软件系统的开发者控制“变化”(应用系统中的功能、环境、性能等方面经常是会发生改变的,应该要做到在系统发生最大的变化时,系统开发者所要做的改动最小。
)的一种设计模式。
MVC的设计理念认为:
在一个具体的应用系统中,用户界面发生变动的可能性是最大的,而控制部分的变动次之,当然业务逻辑功能的实现一般是最稳定的[12]。
模型、视图、控制器三者之间的关系和各自的主要功能,如图2.1所示。
图2.1MVC模式
1、视图(View)
视图层能够实现数据有目的的显示(理论上,这不是必需的)。
在视图中一般没有程序上的逻辑。
为了实现视图上的刷新功能,视图需要访问它监视的数据模型(Model),因此应该事先在被它监视的数据那里注册,就Web应用而言,既可以是HTML界面,也可能是XML、XHTML或Applet界面,随着应用的复杂性和规模性,界面的处理也变得具有挑战性。
一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。
业务流程的处理交予模型(Model)处理。
比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型[13]。
视图主要由JSP建立,struts包含扩展自定义标签库(TagLib),可以简化创建完全国际化用户界面的过程。
目前的标签库包括:
BeanTags、HTMLtags、LogicTags、NestedTags以及TemplateTags等。
视图层能够实现数据有目的的显示(理论上,这不是必需的)。
在视图中一般没有程序上的逻辑。
为了实现视图上的刷新功能,视图需要访问它监视的数据模型(Model),因此应该事先在被它监视的数据那里注册。
2、模型(Model)
业务流程与状态的处理以及业务规则的制定。
业务流程的处理过程对其它层来讲是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。
业务模型的设计可以说是MVC最主要的核心。
“数据模型”(Model)用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。
“模型”有对数据直接访问的权力,例如对数据库的访问。
“模型”不依赖“视图”和“控制器”,也就是说,模型不关心它会被如何显示或是如何被操作[14]。
但是模型中数据的变化一般会通过一种刷新机制被公布。
为了实现这种机制,那些用于监视此模型的视图必须事先在此模型上注册,从而视图可以了解在数据模型上发生的改变。
在Struts的体系结构中,模型分为两个部分:
系统的内部状态和可以改变状态的操作(事务逻辑)。
内部状态通常由一组ActinformBean表示。
根据设计或应用程序复杂度的不同,这些Bean可以是自包含的并具有持续的状态,或只在需要时才获得数据(从某个数据库)。
大型应用程序通常在方法内部封装事务逻辑(操作),这些方法可以被拥有状态信息的bean调用[15]。
3、控制器(Controller)
控制(Controller)即从用户接受请求,将视图与模型进行匹配,共同完成用户的请求。
控制层并不执行任何的数据处理。
控制层的划分其作用相当于一个分发器,选择相应的视图与模型,才能完成相对应的用户请求。
在struts中,基本的控制器组件是ActionServlet类中的实例servelt,实际使用的servlet在配置文件中由一组映射(由ActionMapping类进行描述)进行定义。
对于业务逻辑的操作则主要由Action、ActionMapping、ActionForward这几个组件协调完成的,其中Action扮演了真正的业务逻辑的实现者,ActionMapping与ActionForward则指定了不同业务逻辑或流程的运行方向。
struts-config.xml文件配置控制器[16]。
系统执行过程中,若用户单击一个连接,控制层在收到请求之后,并不对业务信息进行任何处理,只负责将用户信息传送给模型,通知模型选取对应的的视图返回给用户。
因而,视图与模型可能存在一对多和多对一两种。
2.3Struts
Struts是MVC模式的一种实现。
Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件[17],这是它的一大优点,使开发者能更深入的了解其内部实现机制。
Struts工作原理如图2.2所示。
图2.2Struts工作原理图
Struts工作原理:
先将视图层JSP文件中的请求提交到Struts的处理标记文件*.do,*.action中,Struts框架根据其提交的标记名寻找struts.config.xml文件,找到名字相同的文件再跳转到相对应的Action文件中,在Action文件完成业务逻辑处理再跳转到JSP文件中来[18]。
Struts有其自己的控制器(Controller),同时整合了其他的一些技术去实现模型层(Model)和视图层(View)。
在模型层,Struts可以很容易的与数据访问技术相结合,如JDBC/EJB,以及其它第三方类库,如Hibernate/iBATIS,或者ObjectRelationalBridge(对象关系桥)。
在视图层,Struts能够与JSP,包括JSTL与JSF,以及Velocity模板,XSLT与其它表示层技术,Struts框架先将视图层JSP文件中的请求提交到Struts的处理标记文件*.do,*.action中,Struts框架根据其提交的标记名寻找struts.config.xml文件,找到名字相同的文件再跳转到相对应的Action文件中,在Action文件完成业务逻辑处理再跳转到视图层的JSP文件中来[19-20]。
在struts框架中,模型分为两个部分:
一是系统的内部状态,二是可以改变状态的操作(事务逻辑)。
内部状态通常由一组ActinFormJavaBean表示。
根据设计或应用程序复杂度的不同,这些Bean可以是自包含的并具有持续的状态,或只在需要时才获得数据(从某个数据库)。
大型应用程序通常在方法内部封装事务逻辑(操作),这些方法可以被拥有状态信息的bean调用。
比如贷款信息bean,它拥有用户贷款的详细信息,可能还有checkOut()方法用来检查用户的账户信息,并向下一级发评审信息。
小型程序中,操作可能会被内嵌在Action类,它是struts框架中控制器角色的一部分。
当逻辑简单时这个方法很适合。
建议用户将事务逻辑(要做什么)与Action类所扮演的角色(决定做什么)分开。
Struts框架中的视图由JSP建立,struts包含扩展自定义标签库,可以简化创建完全国际化用户界面的过程[21]。
Struts框架中的控制器,其基本的控制器组件是ActionServlet类中的实例servlet,实际使用的servlet在配置文件中由一组映射(由ActionMapping类进行描述)进行定义[22]。
Struts框架是对WebMVC模式的具体实现,Struts框架作为一个可重用的MVC2的设计实现,不仅将常规的WebMVC设计模式中所倡导的分离应用系统中“显示逻辑和业务逻辑”的设计思想加以具体地应用和实现,而且Struts框架中的MVC2与JSPModelTwo模式中的WebMVC也是有不同的技术实现—主要表现在原有视图层(HTML/JSP页面)和控制层(Servlet组件)之间添加了一个前端控制器组件ActionServlet作为控制层中的一个前端控制器,系统中的所有有效的业务功能请求都要经过该前端控制器ActionServlet组件来分发和导航,此时的应用系统将通过该总控ActionServlet组件来管理所有的请求行为[23],并由它来决定哪个具体的后端业务调度控制器Action组件被真正调用并处理表示层中的具体业务功能的请求;另外,在系统设计实现方面将标准的Servlet组件改成了Action组件以统一处理浏览器端所产生的Get和Post方式的请求;同时Action组件可以通过XML的配置文件来进行管理,这在一定程度上增加了应用系统的整体结构的灵活性和可扩展性。
2.4本章小结
本章详细介绍了与本系统相关的主要技术,分析了采用采用Struts框架结构的B/S设计模式的贷款管理系统的关键技术,通过采用B/S的设计模式的使系统能简化、规范应用系统的开发与部署,系统整体具有较好的可移植性、安全性与与再用价值,在开发过程中采用的MVC开发模式使模型层、视图层、控制层三层分离,将开发中的问题划分开来各个解决,易于控制、延展和分配资源[24],在系统需求分析中采用UML进行系统分析,通过使用面向对象的方法来分析系统,建立了面向对象的系统模型,帮助开发人员了解系统功能与进行系统流程分析,快捷、全面、高效的获取了系统需求。
第3章
系统需求分析
本章节主要介绍了系统的需求分析,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 关于 银行贷款 计算机 毕业论文 资料