《本科毕设论文-—银行信息管理系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《本科毕设论文-—银行信息管理系统的设计与实现.doc(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、沈阳化工大学学士学位论文【摘 要】 随着银行服务的不断提高,各类的信息量也在不断增大,信息的处理成为管理者的一个庞大负担。银行信息管理系统可以有效的记录和为管理者提供方便快捷的信息处理,极大减轻管理者的负担。本文介绍了银行信息管理系统的设计和开发过程,详细阐述了整个应用系统的设计思想,最终达成一个完整的设计方案:本系统采用目前流行的Java语言作为开发语言,使用Eclipse作为开发工具,使用Oracle 11g作为后台数据库,采用B/S结构,采用Spring、Struts2、Hibernate整合框架,并大量使用AJAX技术,这些皆是目前的主流。【关键词】银行,银行信息,JAVA ,Spri
2、ng,Struts2,Hibernate,AJAXDesign and Implementation of the Bank Information Management System 【Abstract】With the continuous improvement of quality of banking services ,The amount of data of various types of information is also increasing,Information processing become a huge burden on managers.The ban
3、k information management system can effectively record these numbers,and it can provide managers with a convenient information processing,and greatly reducee the burden on managers。This article describes the banks information management system designd and development processing,which Using Eclipse a
4、s a development tool,Using Oracle 11g as the background database,using B / S structure, using Spring, Struts2, Hibernate integration framework,And extensive use of AJAX technology, these are all the current mainstream technology.【Keywords】Bank Information Management System,B/S structer ,java,spring,
5、Struts2,Hibernate,AJAX目 录第一章 引言11.1 课题来源11.2 国内外现状11.3 研究意义11.4 技术介绍1第二章 需求分析52.1系统定义52.2 系统开发设计思想52.3 功能需求52.4 数据需求62.5 数据需求62.6 非功能性需求7第三章 数据库设计93.1 数据库93.2 数据库的选择93.3 数据库设计9第四章 系统实现144.1 银行信息管理系统实现144.2 系统登录功能模块154.3 添加计算机设备功能模块164.4 计算机设备维护功能模块174.5 添加文章功能模块194.6 文章维护功能模块194.7 添加用户功能模块214.8 用户管理
6、功能模块224.9 机构设置功能模块23第五章 结论25后 记26参考文献27附录:28III第一章 引言1.1 课题来源随着中国经济的发展和人们物质生活水平的不断提高,银行服务渐渐成为了人们日常及其工作中不可或缺的部分,并且随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。银行信息管理系统是一套完整的信息管理系统,其开发的功能主要包括:计算机设备管理,公共信息管理,权限用户管理等。在积极建立现代商业管理机制的今天,仅仅靠原始的手工管理或简单的单机管理,面对大量的信息,无法有效率地进行管理及其维护。管理者的只能依据报表
7、数据,在浪费大量人力、物力的同时无法做到实时监控,难以保证数据的准确性和及时性。因此,先进的管理思想在商业中实现就成为了一个可望而不可及的目标。银行部门非常急需一套既有先进管理思想的银行信息管理系统,作为实现目标和提高现有水平的一种重要手段。1.2 国内外现状金融信息化发展水平是衡量一个国家国民经济发展水平的重要标志。正因为如此,许多发达国家把金融信息化建设作为一项关系到国民经济全局的基础性建设,都使用最新科技成就来装备自己的金融业。我国银行业计算机系统的引进,从早期的脱机处理系统到联机处理系统,再到计算机网络支撑下的综合银行处理系统,走过了二十多年的历程,银行计算机的普遍应用已从根本上改变了
8、传统的方式,使银行的经营和管理发生了深刻的变革。1.3 研究意义随着我国信息化进程的全面推进,各领域的信息化进程都在飞速的发展,同样也推动着物流领域的信息化进程飞快的向前发展。由于信息化进程的全面推进,对现代银行服务提出更高的要求:信息化、自动化、网络化、智能化和柔性化等。客户需求的标准也越来越高,各银行要想在市场中占有一席之地,必须要为客户提供一流的服务,而这些都需要良好的设备作为第一保证。1.4 技术介绍1.4.1 JAVA开发语言的选择 Java技术已经成为当今Internet应用开发的核心与主流技术。这一方面是因为Java语言具有面向对象、可移植性、强壮性与安全性等优良特性,另一方面也
9、由于Java技术对各个层次的分布式应用(包括电器设备的嵌入式计算、桌面计算与企业级计算)都提供了全面系统的方法与技术。因此,目前Java已经从单纯的程序设计语言发展成为支撑Internet计算的庞大技术体系,进入了发展与应用的高级阶段。接下来具体的阐述一下Java的本质特征:一、简单性 Java语法和语义都比较单纯,容易学习和使用。并且,Java对C+中容易引起错误的成份进行了相当成功的改造,如去掉指针,取消多重继承和运算符重载,内存管理由程序员移向Java内嵌的自动内存回收机制等,简化语义,减少出错机会,减轻程序员负担。Java还提供大量功能丰富的可重用类库,简化了编程工作量。 二、面向对象
10、 作为一种面向对象的编程语言,Java不仅最为“纯洁”,同时,它对面向对象方法的支持也最为全面。与C+一样,Java的对象有模块化性质和信息隐藏能力,满足面向对象的封装要求。Java支持面向对象的继承性。另外,Java通过抽象类和接口支持面向对象的多态性要求。 三、分布式特征 Java包括一个支持HTTP和FTP等基于TCP/IP协议的子库。因此,Java应用程序可凭借URL打开并访问网络上的对象,其访问方式与访问本地文件系统几乎完全相同。四、健壮性 Java提供自动垃圾回收机制来进行内存管理,防止程序员在管理内存时容易产生的错误。通过集成的面向对象的异常处理机制,在编译时,Java提示可能出
11、现但未被处理的异常,帮助程序员正确的进行选择,以防止系统的崩溃。 五、安全性 Java的安全性可从两个方面得到保证。一方面,内存布局并不像C和C+一样由编译器决定,而是由运行系统决定,内存布局依赖于Java运行系统所在的软、硬件平台的特性。因此,Java的内存分配对于程序员是透明的,它完全由底层的运行系统控制,Java程序无法破坏不属于它的内存空间。另一方面,当Java用来创建浏览器时,语言功能和浏览器本身提供的功能结合起来,使它更安全。1.4.2 SSH整合框架以及AJAX技术介绍SSH整合框架,即Spring、Struts2以及Hibernate三大主流框架的集成框架,是目前最为流行的一种
12、web应用的开源框架。集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建出结构清晰、可复用性好、维护方便的web应用程序。Hibernate(提供对持久层的支持):Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据
13、持久化的重任。 Hibernate通过xml配置文件设置java类与数据库表之间的映射。Spring(提供对业务逻辑层的支持):是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架,提供促进了松解耦。当应用了Ioc技术,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建依赖的对象。应用对象被声明式地组合,典型的是在一个xml文件里。Spring有如下特点:轻量从大小与开销两方面而言Spring都是轻量的。完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。并且Spring所需的处理开销也是微不足道的。此外,Spring是非侵入式的:典型地,Spri
14、ng应用中的对象不依赖于Spring的特定类。控制反转Spring通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。你可以认为IoC与JNDI相反不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。面向切面Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务(transaction)管理)进行内聚性的开发。应用对象只实现它们应该做的完成业务逻辑仅此而已。它们并不负责(甚至是意识)其它的系统级关注点,
15、例如日志或事务支持。容器Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例以及它们是如何相互关联的。然而,Spring不应该被混同于传统的重量级的EJB容器,它们经常是庞大与笨重的,难以使用。框架Spring可以将简单的组件配置、组合成为复杂的应用。在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。Spring的这些特
16、性可以使代码更干净、可管理、更易测试代码。Spring的一个最大的目的就是使J2EE开发更加容易。同时,Spring之所以与Struts、Hibernate等单层框架不同,是因为Spring致力于提供一个以统一的、高效的方式构造整个应用,并且可以将单层框架以最佳的组合揉和在一起建立一个连贯的体系。可以说Spring是一个提供了更完善开发环境的一个框架,可以为POJO(Plain Old Java Object)对象提供企业级的服务。Struts2:是在 struts 和WebWork的技术基础上进行了合并的全新的Struts 2框架。Struts 2以WebWork为核心,采用拦截器的机制来处
17、理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开。Struts2框架的大概处理流程如下: 1、加载类(FilterDispatcher) 2、读取配置(struts配置文件中的Action)3、派发请求(客户端发送请求) 4、调用Action(FilterDispatcher从struts配置文件中读取与之相对应的Action ) 5、启用拦截器(WebWork拦截器链自动对请求应用通用功能,如验证) 6、处理业务(回调Action的execute()方法) 7、返回响应(通过execute方法将信息返回到FilterDispatcher) 8、查找响应(Fi
18、lterDispatcher根据配置查找响应的是什么信息如:SUCCESS、ERROR,将跳转到哪个jsp页面) 9、响应用户(jsp-客户浏览器端显示) 10、struts2标签库(相比struts1的标签库,struts2是大大加强了,对数据的操作功能很强大)。AJAX:即Asynchronous Javascript And Xml(异步Javascript和XML)。通过AJAX,Javascript可使用Javascript的XMLHttpRequest对象直接与服务器进行通信,即在不刷新页面的情况下完成页面与服务器的数据交互。1.4.3 B/S模式B/S(Browser/Serve
19、r,浏览器/服务器)模式又称B/S结构。它是随着Internet技术的兴起,对C/S模式应用的扩展。在这种结构下,用户工作界面是通过IE浏览器来实现的。随着Java Web技术的不断发展,B/S结构在企业级应用中得到广泛的认可。1.4.4 开发环境操作系统:Windows 7;运行工具:IE 7.0开发工具:Eclipse JEE数据库:Oracle 11g服务器: Tomcat 6.0第二章 需求分析2.1系统定义系统定义阶段的总体任务是根据用户的具体要求解决系统做什么?。具体任务可以分为三部分:问题定义,可行性研究和需求分析。问题定义必须回答的关键问题是要解决的问题是什么?。首先进行有关信
20、息的收集,分析,明确用户提出的要求。然后把用户的要求准确,完整的描述下来,产生的结果是问题描述书。接下来要做的工作是可行性研究,它要回答用户提出的问题可否可解?可解的价值如何?,产生的结果是可行性报告。然后进行需求分析。在前两个步骤完成后,着手进行系统需求分析的工作,其目的是明确该系统做什么?。该阶段结束时要产生软件计划,需求说明书等文档。对于小型软件来说,可以不进行可行性研究,相应的文档也可以省去,但需求说明书是不可少的。2.2 系统开发设计思想本系统采用的是典型的J2EE平台下的三层结构,分为持久层、控制层、视图层。在持久层使用Hibernate作为持久层框架,在控制层使用Struts2作
21、为控制层框架,在试图层大量使用Ajax技术提供更好的用户体验,使用Spring框架为系统提供支持。2.3 功能需求软件需求分析阶段的工作和任务是在对问题进行调查了解的基础上,用一定得方法和手段对问题进行分析建模。需求分析的结果应该反映的是系统必须完成哪些工作,而不是怎么完成它的工作。它的主要用途是为系统的设计与实现提供依据和保障。银行信息管理系统的一个最主要的目的就是为管理员提供方便快捷的信息处理,因此其主要的功能有如下7条。 能够快速添加计算机设备的信息。 能够方便的对计算机设备及其相关设备进行管理。 能够快速添加文章的信息。 能够方便的对文章信息进行管理。 能够快速添加用户信息。 能够方便
22、的对用户信息进行管理。 能够方便的对机构信息进行添加和管理。系统结构图如图2-1: 图2-1 功能模块图2.4 数据需求1. 员工信息 员工信息包括员工的自然信息(员工号、员工姓名、性别、出生日期、部门、职务、密码等描述信息)。2. 机构信息机构信息包括(机构编号、机构名称、上级单位、机构描述信息)。3. 部门信息部门信息包括(部门编号、部门名称、所属机构、部门类别)。4. 文章信息文章信息包括(文章编号、文章标题、文章副标题、摘要、作者编号、作者姓名、发表日期、文章内容信息)。5. 计算机及其相关设备信息计算机及其相关设备信息包括(设备编号、设备品牌型号、CPU型号、内存大小、硬盘大小、操作
23、系统、IP地址、MAC地址、使用人id、使用人姓名、使用人单位、工作间号、责任人编号、用途、购买时间、领用时间、设备类型信息)。2.5 数据需求1. 实用性本系统是本着实用的原则进行开发的,本着按照用户需求的原则开发此系统。为的是给用户带去更多的使用价值。 2. 易维护性易维护是一个优秀的软件所必备的性能,由于管理员并非专门的软件开发人员,所以在开发设计的时候要考虑到软件的易维护性。3. 安全可靠性对于数据库的设计,一个关键的内容就是数据库的安全性。设计开发此软件,一定要考虑使用合理的、安全可靠的数据库。 4. 可扩充性和标准化原则考虑到将来扩充的方便,尽量把文档及其代码写的标准化,学习分层思
24、想,有利于将来软件的扩充。2.6 非功能性需求1. 用户界面需求如表2-1 表2-1 用户需求界面表需求名称详细要求风格美观大方,实用性强分辨率最佳效果1024*7682. 软硬件环境需求如表2-2 表2-2 软硬件环境需求表需求名称详细要求运行速度系统运行时间不超过10秒,人机交互时间不超过5秒容量占用内存不大于100MB操作系统性能Windows XP、Windows73. 产品质量需求如表2-3 表2-3 产品质量需求表主要质量属性详细要求健壮性本产品具有一定的健壮性,包括有效性验证等可靠性测试质量合格。性能,效率性能先进,效率高。易用性本产品应用十分方便。清晰性整个程序的代码和窗体相对
25、清晰安全性本系统具有很好的安全性,对于每个进入系统的用户进行身份的验证确认。兼容性兼容性相对来说比较好可移植性有比较强的移植性。4. 运行环境需求 硬件需求CPU:Intel或者兼容机,Celeron(R) 2.40 GHZ 或更高。内存(RAM):512MB或更高。硬盘:40G或更高。监视器:1024*768分辨率 软件需求操作系统软件:Windows XP、Windows7数据库管理系统:Oracle 11g服务器:Tomcat 6.0运行工具:IE 7.0第三章 数据库设计3.1 数据库本系统将使用一直以来使用都最为广泛的关系模型作为数据库的建设依据。在用户的观点下,关系模型中数据的逻辑
26、结构是一张二维表,一个关系对应通常说的一张表,并且关系的每一个分量必须是一个不可分的数据项。而一个基于关系模型的数据库则是由若干个二维表组成的。对于一些大型和中型的数据库,如Oracle,DB2等都属于关系型数据库,同时它们所带有的数据库管理工具是其他小型数据库所没有的,而同时这些工具又为管理员的工作节省了很多的时间和财力。3.2 数据库的选择 数据库按应用的不同目的,可以分为两类数据模型,它们分别属于两个不同的层次。第一类是概念模型,第二类是逻辑模型和物理模型。概念模型也称信息模型,它是按用户的观点来对数据和信息建模,主要用于数据库设计。逻辑模型主要包括层次模型(Hierarchical M
27、odel)、网状模型(NetWork Model)、关系模型(Relational Model)、面向对象模型(Object Oriented Model)和对象关系模型(Object Relational Model)等。它是按计算机系统的观点对数据建模,主要用于DBMS的实现。第二类中的物理模型是对数据最底层的抽象,它描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法,是面向计算机系统的。银行信息管理系统必须拥有数据库的支持,所有设备的数据都应该存储到数据库中,便于管理员管理及其维护。由于银行信息管理系统是一个数据会不断增多的系统,Oracle 数据库完全满足上文提
28、及的需求,并且本系统采用Java语言实现的,而Oracle公司已将Java进行了收购,Java与Oracle必定会是最好的搭档,因此本人选择当今最大的商业型数据库Oracle 11g 作为数据的存储介质,以便能更好研究一下Java与Oracle的融合使用。3.3 数据库设计数据库设计的目标是为用户和各种应用系统提供一个信息基础设施和高效率的运行环境。高效率的运行环境包括:数据库数据的存取效率、数据库存储空间的利用率、数据库系统运行管理的效率等都是高的。基础数据的收集、入库是数据库建立初期工作量最大、最烦琐、最细致的工作。在以后数据库运行过程中更需要不断地把新的数据加到数据库中,使数据库成为一个
29、“活库”,否则就成为“死库”。数据库一旦成了“死库”,系统也就失去了应用价值,原来的投资也就失败了。根据上文对银行信息管理系统做的需求分析,整理出银行信息管理系统的实体关系E-R图。其中包括员工实体、机构实体、部门实体、文章信息实体和设备信息实体。如图3-1: 图3-1 实体E-R图3.3.1 员工实体员工实体用于存储员工的登录名称、密码信息及其自然人信息,包括员工号、员工姓名、性别、出生日期、部门、职务、密码等描述信息。员工实体图如图3-2所示。 图3-2 员工实体3.3.2 机构实体机构实体包括机构编号、机构名称、上级单位、机构描述信息。机构实体图如图3-3所示。 图3-3 机构实体3.3
30、.3 部门实体部门实体包括部门编号、部门名称、所属机构、部门类别。部门实体图如图3-4所示。 图3-4 部门实体3.3.4 文章实体文章实体包括文章编号、文章标题、文章副标题、摘要、作者编号、作者姓名、发表日期、文章内容信息。文章实体图如图3-5所示。 图3-5 文章实体3.3.5 数据库表3.3.5.1 员工表(EMP)员工表用于存储员工的登录名称、密码信息及其自然人信息,包括员工号、员工姓名、性别、出生日期、部门、职务、密码等描述信息。该数据表的结构见表3-1。 表3-1 员工表字段数据类型长度非空描述主键外键说明idNUMBER自增YY序号workeridNUMBER10Y登录名称唯一p
31、asswordVARCHAR220Y登录密码nameVARCHAR220Y员工姓名sexVARCHAR21性别birthdayDATE出生日期departmentVARCHAR250Y部门名称YjobnameVARCHAR250Y职务Y3.3.5.2 机构表(UNITL)机构表包括机构编号、机构名称、上级单位、机构描述信息。该数据表的结构见表3-2。 表3-1 机构表字段数据类型长度非空描述主键外键说明idNUMBER自增YY序号unitidNUMBER20Y机构编号唯一unitnameVARCHAR250Y机构名称upnnitVARCHAR250上级单位3.3.5.3 部门表(DEPTNO)
32、部门表包括部门编号、部门名称、所属机构、部门类别。该数据表的结构见表33。 表3-3 部门表 字段数据类型长度非空描述主键外键说明idNUMBER自增YY序号deptnoidVARCHAR210Y部门编号deptnonameVARCHAR250Y部门名称DepartmentunitVARCHAR250Y所属机构Y3.3.5.4 文章表(ARTICLE)文章表包括文章编号、文章标题、文章副标题、摘要、作者编号、作者姓名、发表日期、文章内容信息。该数据表的结构见表34。 表3-4 文章表 字段数据类型长度非空描述主键外键说明idNUMBER自增YY序号titleVARCHAR250Y文章标题Tit
33、le_2VARCHAR250文章副标题abstractVARCHAR2200Y摘要Author_idNUMBER10Y作者编号YAuthor_nameVARCHAR220作者姓名Deliver_timeDATEContentVARCHAR25000Y文章内容 第四章 系统实现4.1 银行信息管理系统实现系统整体流程图如图4-1: 图4-1 系统流程图4.2 系统登录功能模块 系统页面布局是整个系统的门面,是使用者的第一视觉,所以其页面的设计突出简洁、方便、功能的实现以便于操作和维护为根本。在设计系统的页面架构时应该给使用者超凡的视觉体验。登录页面如图4-2: 图4-2 登录页面图 登录时使用j
34、avascript脚本语言对输入数据进行校验,只有符合校验的Http请求才可以提交,并由struts2相应类截获,配合hibernate支持的持久层进行业务逻辑处理,如匹配成功则可以登录进入如图4-3页面;否则使用AJAX技术向用户弹出提示框提示“用户名或密码错误”。关键代码叙述如下:首先,发送的请求被截获后调用Struts2业务逻辑类的默认或指定(在struts.xml中事先配置好的方法名)的方法,用户表的持久层处理类被Spring同时注入其中,通过这个持久层处理类事先实现了的方法将从页面中传入的“职工号”数据通过类型转换成包装类作为参数传入,获取出以“职工号”为依据的以“用户对象”存在的数
35、据集合,因为用户表中的workerid即职工号是主键,主键在表中是唯一的,所以得到的集合中只有一个用户的信息,获取集合中的第1个用户对象即可得到想要的数据信息,从中获取“职工号”和“密码”数据信息与页面中传入的“职工号”和“密码”数据信息做匹配,如匹配成功,将是登录用户的信息存入请求的HttpSession中并返回struts2的Action类的常量字符串“SUCCESS”作为Struts2配置文件返回跳转到“成功”页面的依据;如匹配不成功,则将不是登录用户的信息存入请求的HttpSession中并返回struts2的Action类的常量字符串“ERROR”作为Struts2配置文件返回跳转到
36、“不成功”页面的依据。 如登录成功则进入首页,首页如图4-3: 图4-3 欢迎首页图 本系统由三个部分组成,分别为头部信息栏、头部导航栏和底部欢迎栏。菜单栏主要包括如下功能:计算机设备管理:包括添加计算机设备和计算机设备维护。公共信息管理:包括添加文章和文章维护。权限用户管理:包括添加用户和用户管理。系统设置:包括机构设置。4.3 添加计算机设备功能模块 添加计算机设备功能模块的功能是:当有新的设备购进或领用,将有关信息填入其中(其中部门需要添加的信息是有选择的,选项在页面打开时被初始化到页面的选择列表中),使其被添加到数据库中进行统一管理。添加计算机设备页面如图4-4: 图4-4 添加计算机
37、设备页面图 当用户填写好必须要填写的信息后点击“确定”按钮将向相应的struts2类发送一个http请求,在此之前使用javascript脚本语言进行输入校验,发送请求到相应类后配合hibernate相应持久层类进行业务逻辑处理,如成功则提示用户“成功”;否则提示“失败”。关键代码叙述如下:首先,发送的请求被截获后调用Struts2业务逻辑类的默认或指定(在struts.xml中事先配置好的方法名)的方法,计算机设备表的持久层处理类被Spring同时注入其中,将从页面中传入的全部信息通过计算机设备表的持久层处理类的各个信息的set方法存入新创建的计算机设备对象中,调用计算机设备表持久层处理类的
38、save方法将这个计算机设备对象通过Hibernate的映射文件的方式存入数据库中,如成功存入,返回struts2的Action类的常量字符串“SUCCESS”作为Struts2配置文件返回跳转到“成功”页面的依据;如存入过程中违反了计算机设备表的某一个或某几个约束时将抛出异常,被捕获异常后返回struts2的Action类的常量字符串“ERROR”作为Struts2配置文件返回跳转到“不成功”页面的依据。4.4 计算机设备维护功能模块 当需要查询、修改和删除设备的使用情况时,就可以选中导航栏中的“计算机设备管理”-“计算机设备维护”选项进入“计算机设备维护”界面。用户可以在页面的提示信息中所
39、以选择按照什么要求来进行查询,如全部不填写则视为“查询全部”。计算机设备维护页面如图4-5: 图4-5 计算机设备维护页面图当例如上图所示输入使用人信息为“赵迪”后点击确定按钮即可查询出使用人为赵迪的计算机设备信息。如图4-6: 图4-6 执行结果图 上图演示为“输入使用人姓名后显示出使用人所持有使用的设备信息”,如查出设备数超过十条,将发挥AJAX技术的优越性进行不刷新页面的分页显示。点击右侧的“编辑”按钮后,相应行的内容将被置换成文本输入框(默认值)为置换前所显示的内容,在更改后点击“修改”按钮后,相应信息即被更改。点击右侧的“删除”按钮后,相应行的内容信息将被删除。 当用户输入(或不输入
40、)信息后点击“确定”按钮,将由AJAX方式发送一个http请求到相应的类,在此类中配合hibernate持久层类进行业务逻辑处理查询出希望得到的数据并返回事先指定的javascript“返回函数”并通过DOM的方式动态绘制表格(包括“修改”和“删除”按钮等)添加或更改到页面中,此时“修改”和“删除”操作也同样通过AJAX技术实现。关键代码叙述如下:首先执行在页面的form标签中被调用的javascript方法并将显示结果的表单中的数据清空(因为每次都要重新绘制显示给用户的表单,所以需要清空以前的数据信息),设置URL,获取提交请求表单中的全部信息作为参数,设置以“post”方式提交请求,设置请
41、求被处理后返回所执行的javascript方法后,请求被发送到struts2的xml配置文件中并通过Spring的配置文件找到执行这个请求的业务逻辑处理类并开始处理业务,处理完毕后将需要显示给用户的全部数据信息返回给事先指定的返回结果所执行的javascript方法并通过DOM的方式绘制表单并添加数据信息。4.5 添加文章功能模块添加计算机设备功能模块的功能是:当有新的文章,将有关信息填入其中,使其被添加到数据库中进行统一管理。添加文章页面如图4-7: 图4-7 添加文章页面图 当用户填写好必须要填写的信息后点击“确定”按钮将向相应的struts2类发送一个http请求,在此之前使用javascript脚本语言进行输入校验,发送请求到相应类后配合hibernate相应持久层类进行业务逻辑处理,如成功则提示用户“成功”;否则提示“失败”。关键代码叙述如下: 首先,发送的请求被截获后调用Struts2业务逻辑类的默认或指定(在struts.xml中事先配置好的方法名)的方法,然后通过Spring的xml配置文件找到处理业务逻辑的Struts2类(因为Struts2的类交由Spring管理),文章表的持久层处理类被Spring同时注入其中,将从页面中传入的全部信息通过文章表的持久层处理类的各个信息的set方法存入新创建的文章对象
限制150内