• 1.20 MB
  • 2022-04-22 13:37:05 发布

基于struts框架的保险产品管理系统毕业论文.doc

  • 39页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'东北石油大学本科生毕业设计(论文)基于struts框架的保险产品管理系统毕业论文目录第1章概述11.1研究背景11.2课题任务21.3论文结构2第2章系统相关技术介绍32.1J2EE平台介绍32.2Struts框架72.3Hibernate框架82.4本章小结10第3章系统分析113.1系统开发环境确定113.2系统可行性分析113.3总体功能概述123.4系统安全需求133.5用户界面需求133.6技术线路143.7本章小结14第4章系统设计与实现154.1系统设计的总体原则154.2数据库设计154.3用户界面设计204.4本章小结2038 东北石油大学本科生毕业设计(论文)第5章系统详细实现225.1公用模块实现225.2用户登录实现225.3员工信息管理245.4客户管理245.5客户反馈处理255.6保险产品购买265.7本章小结27结论28参考文献29致谢30第1章概述1.1研究背景38 东北石油大学本科生毕业设计(论文)保险公司是专门经营保险业务的公司,主要的业务功能是经营保险业务和组织保险经济活动。通过收取保险费,建立保险基金,对社会提供保险保障,并通过调用保险资金,从中获得一定的利润。保险公司的主要功能就是保险补偿被保人损失,即通过承保业务把被保险人的损失集中在自己身上,出险时根据合同履行对应的赔偿责任,以此缩小被保险人的经济损失。同时保险公司为了减少风险,确保盈利,通常通过加大承保面(标的大量化)和再保险业务把风险进一步分散出去,在被保险人和保险人之间以及保险人和再保人之间把风险分摊,进而达到分散危险损失的功能,确保保险公司的正常资金运转。财产保险公司的主营业务是财产保险,财产保险是把财产和其相关利益作为保险标的、因发生保险事故导致财产损失,用金钱或事务进行补偿的一种保险。主要有家庭财产保险、工程保险、机动车保险、企业财产保险、货物运输保险、航空航天保险等等很多业务种类。因为财产保险比较特殊,通常保标的价值非常高,保险公司所要承担的风险也相对较大,为了能够有效率的减小风险,必须要使用再保险,将一部分风险分给其他再保人,从而确保财产保险公司稳定的经营。综上所述,再保险业务在财产保险公司的经营中有非常重要的作用。传统的再保险系统实现通常具有以下特点:(1)保险公司的直接业务、再保险业务和财务系统都是单独设计,彼此靠事后数据提取来数据交互,无法实现保险公司精细化管理。(2)由于财产保险公司的再保险业务种类相对较多,以前根据业务模式不一致而分别开发系统,无法很好的实现集成。增加了管理再保险业务的复杂性,同时再保数据的管理分散在不同的系统中,很难满足保险公司的日常管理需要。保险公司随着业务量的增加,提出了精细化管理的思路,同时为了达到保险公司提出的财务管理、信息披露和风险控制等方面的要求,保险公司对数据质量和数据的及时性提出了更高的要求。传统再保险系统的实现模式已经无法满足保险公司再保险业务管理的需要。财产保险公司迫切需要实现再保险业务的统一集中处理,同时实现再保险业务处理与直接业务处理和财务处理的“无缝连接”。以便更好的支持保险公司业务的快速发展。1.2课题任务(1)分析系统所需要实现的功能,并做系统设计包括界面设计、数据设计等工作。(2)学习CSS和DIV页面布局和PS常用使用技巧(3)学习java语言,JSP开发以及SSH框架(4)撰写本科毕业设计论文1.3论文结构本文共分五章,内容安排如下:第一章引言,介绍本课题的意义、任务、预期目标等。第二章相关理论技术调研综述,介绍了系统开发工具、数据库及软件工程等理论技术,为后面提出的解决方案做准备。第三章系统需求分析,需求分析是软件开发的非常重要的一个步骤,因此在本章我们进行了比较详细的分析。详细介绍用户在软件功能上的需求,其中包括用户要求的软件的运行环境,软件基本功能。构建系统的总体结构图,并详细分析了各模块的功能,为系统的设计及实现打下一个良好的基础。第四章系统设计与实现,主要结合相关先进技术及具体实现方案描述整个系统功能的设计与实现,包括系统的运行模式与开发环境、数据库的设计与构建、系统的实现介绍。第五章系统测试,对本文开发的系统的测试。38 东北石油大学本科生毕业设计(论文)第2章系统相关技术介绍2.1J2EE平台介绍Java2PlatformEnterpriseEdition是J2EE的全称,是Sun公司于1999年6月发布。它是由Sun公司领导各厂商共同制定的,得到世界广泛认可的工业标准,它是基于Java技术的一系列的规范、技术框架及技术的集合,用于创建分布式企业系统。J2EE是利用Java2平台简化企业级应用解决方案的复杂问题的一种体系结构[1]。核心Java平台的标准版是J2EE的技术基础,J2EE不仅拥有标准版的所有优点,而且还全面支持EnterpriseJavaBeans(EJB),JavaServerPages(JSP),JavaServletAPI,XML(ExtensibleMarkupLanguage)等技术。为了满足高可靠性、高可用性及可扩展性而又无需太多费用的应用需求,J2EE提供中间件集成框架。它通过提供统一的开发平台来降低开发多层应用的复杂性和费用,还提供对现有应用程序集成强有力的支持,并增强了安全机制,提高了性能和效率。最终达到了J2EE的目的:使企业开发者大幅缩短产品投放市场的时间。J2EE体系结构是目前使用最多、最方便的结构模式。2.1.1J2EE多层结构J2EE使用多层分布式应用模型,按功能不同把应用逻辑划分为多个组件,各个应用组件又根据它自己所在的层分布在不同的机器上。Sun公司设计J2EE的初衷正是为了解决Client/Server模型的弊端。在传统的Client/Serve:模式中首次部署时比较容易,但由于客户端承担了过多的角色而难于对其进行改进或升级,这就导致了其可伸展性不理想。传统的两层模型中的不同层面被J2EE的多层模型划分为许多层,一个多层化应用框架给不同的每种服务提供独立的层。J2EE模型通常分为四层,分别如下:(1)运行在客户机上的组件属客户层。(2)运行在J2EE服务器上的组件属Web层。(3)运行在J2EE服务器上的业务逻辑层组件属业务层。(4)运行在EIS(EnterpriseInformationSystem)服务器上的软件系统属企业信息系统层。以上层次也可以按三层来划分,如图2-1所示。因为每个层分布在三个不同的位置:客户计算机、J2EE服务器及后台数据库或过去遗留下来的系统,我们可以将客户层和Web层视为一个层[2]。38 东北石油大学本科生毕业设计(论文)图2-1三层J2EE体系结构2.1.2J2EE技术规范J2EE平台由一系列的应用程序接口(API)、一整套服务(Service)和协议构成,J2EE中的13种技术规范:EJB,JDBC(JavaDatabaseConnectivity),JNDI(JavaNameandDirectoryInterface),JavaIDL,RMI(RemoteMethodInvoke),JSP,Javaservlets,XML,JMS(JavaMessageService),JTS(JavaTransactionArchitecture),JTA,JAF(JavaBeansActivationFramework)和JavaMail。以下是对13种技术规范的简单介绍:(1)EJB:EJB是J2EE技术赢得用户广泛重视的原因之一。它提供了一个框架来开发和实施分布式商务逻辑,显著地简化了具有高度复杂和可伸缩性的企业级应用的开发。EJB规范定义了它的组件如何与容器进行交互作用。容器负责提供目录服务、事务管理、安全性及容错性等公用的服务。值得我们注意的是,EJB并不是实现J2EE的唯一途径,在J2EE的技术大家庭中,EJB只占据了一定的份量[2]。EJB是一种重型框架,设计思想追求完美,模型复杂,对于一些中小型企业应用系统,根本不需启动厚重的EJB容器来解决事务管理等问题,目前流行的一些轻型框架足以解决这样的问题。(2)JDBC:JDBC是一种可用于执行SQL语句的JavaAPI,JDBCAPI提供了一种统一的途径为实现应用程序访问不同类型的数据库,通过使用JDBC,开发人员可以很方便地将SQL语句传送给几乎任何一种数据库。跟ODBC一样,JDBC对开发者屏蔽了一些细节问题。另外,JDBC对数据库的访问还具有平台无关性。(3)JNDI:JNDIAPI是一种标准的Java命名系统接口,它被用于执行名字和目录服务,类似JDBC都是构建在抽象层上。它提供了一致的模型来存取和操作企业级的资源,如DNS,38 东北石油大学本科生毕业设计(论文)LDAP、本地文件系统、应用服务器中的对象。像其它很多Java技术一样,JDNI是provider-based的技术,包括了一个API和一个服务供应接口(SPI。这意味着任何基于名字的技术都能通过JNDI而提供服务,只要JNDI支持这项技术。JNDI目前所支持的技术包括LDAP,CORBACommonObjectService(COS)名字服务、RMI,NDS,DNS,Windows注册表等。很多J2EE技术,包括EJB都依靠JNDI来组织和定位实体。可把JNDI理解为一种将对象和名字捆绑的技术,对象工厂负责生产出对象,这些对象都和唯一的名字绑在一起,外部资源可以通过名字获得某对象的引用。(4)JSP:JSP是一种动态网页技术标准,它的页面由HTML代码JSP标记(tag和嵌入其中的Java程序脚本所组成[3]。服务器在JSP页面被客户端所请求以后对这些Java代码进行处理,然后将执行结果以动态生成的HTML格式的Web页面返回给客户端的浏览器。JSP技术具有的优点:将内容的生成和显示进行分离、强调可重用的组件、采用标记简化页面开发、适应平台广。(5)JavaServlet:Servlet是一种小型的Java服务器端程序,它扩展了Web服务器的功能。它和CGI(CommonGateInterface)Perl脚本很相似,被请求时开始执行,是一种服务器端的应用。但它们有个很大的区别是:Servlets是在Servlet引擎中以分离的线程来运行的,对比每个CGI在开始的时候都要求开始一个新的进程,Servlets在可伸缩性上提供了很好的改进Servlet适用于多种多样的网络协议。Servlet提供的功能大部分与JSP类似,只是实现的方式不同。Servlets全部由Java写成并且生成HTML,而JSP通常是大多数HTML代码中嵌入少量的Java代码。从应用的角度来讲,JSP有标签支持更适合做表现层的事情,而Servlet适合做数据逻辑层的数据处理。(6)RMI:RMI协议调用远程对象上方法。它使用了序列化方式在客户端和服务器端传递数据。它是被EJB使用在更底层的一种协议。(7)XML:XML是一种可扩展的标记语言,用来定义其它标记语言的语言。XML与超文本标记语言HTML不同,用户可以定义自己所需的标记。它被用于共享数据,在互不兼容的系统间交换数据,还可用存储数据,它使数据更有用。XML的发展和Java是相互独立的,但它们有个共同目标就是平台独立性[4]。通过Java和XML的组合,可以得到一个具有平台独立性的完美解决方案。(8)JMS:JMS是用于与面向消息的中间件相互通信的APIoJMS支持点对点的域,还支持发布/订阅类型的域,并且提供经过认可的消息、事务型消息的传递和一致性消息的支持。JMS还为您的应用与旧的后台系统相集成提供另一种方式[4]。它是一个与具体平台无关的API,绝大多数MOM提供商都对JMS提供支持。(9)JTA:JTA定义了一种标准的API,它为J2EE平台提供了分布式事务服务,隔离了事务与底层的资源,实现了透明的事务管理方式,应用系统由此可以访问各种事务监控。JTA主要包括高层接口即面向应用程序的接口;XAResource接口即面向资源的接口;以及事务管理器的接口[5]。要强调的是JTA只提供了接口,没有具体的实现。(10)JTS:JTS是CORBAOTS事务监控的基本实现。简单的说JTS实现了JTA接口,并且符合OTS的规范。JTS规定了事务管理器的实现方式[5]。该事务管理器是在高层支持JTA规范,并且在较底层实现OMGOTSspecification的Java映像。(11)JavaMail:JavaMail是用于存取邮件服务器相关的API,它提供了一套邮件服务器的抽象类。它可以方便地执行一些常用的邮件传输,支持SMTP,IMAP服务器。38 东北石油大学本科生毕业设计(论文)(12)JAF:JavaMail利用JAF来处理MIME编码的邮件附件。MIME的字节流可以被转换成Java对象。JAF没有被大多数的应用直接使用。2.1.3J2EE优势J2EE为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制。保留现存的IT资产:由于企业必须适应新的商业需求,利用己有的企业信息系统方面的投资,而不是重新制定全盘方案就变得很重要。这样,一个以渐进的(而不是激进的,全盘否定的)方式建立在已有系统之上的服务器端平台机制是公司所需求的。JZEE架构可以充分利用用户原有的投资,如一些公司使用的BEATuxedo、IBMCICS,IBMEneina,、InpriseVisiBroker及NetseapeAppli。ationServer。这之所以成为可能是因为J2EE拥有广泛的业界支持和一些重要的企业计算领域供应商的参与。每一个供应商都对现有的客户提供了不用废弃己有投资,进入可移植的JZEE领域的升级途径。由于基于J2EE平台的产品几乎能够在任何操作系统和硬件配置上运行,现有的操作系统和硬件也能被保留使用。(1)高效的开发:J2EE允许公司把一些通用的、很繁琐的服务端任务交给中间件供应商去完成。这样开发人员可以集中精力在如何创建商业逻辑上,相应地缩短了开发时间。高级中间件供应商提供以下这些复杂的中间件服务:a.状态管理服务让开发人员写更少的代码,不用关心如何管理状态,这样能够更快地完成程序开发。b.持续性服务让开发人员不用对数据访问逻辑进行编码就能编写应用程序,能生成更轻巧,与数据库无关的应用程序,这种应用程序更易于开发与维护[6]。分布式共享数据对象CACHE服务让开发人员编制高性能的系统,极大提高整体部署的伸缩性。(2)支持异构环境:J2EE能够开发部署在异构环境中的可移植程序。基于J2EE的应用程序不依赖任何特定操作系统、中间件、硬件。因此设计合理的基于J2EE的程序只需开发一次就可部署到各种平台。这在典型的异构企业计算环境中是十分关键的。JZEE标准也允许客户订购与JZEE兼容的第三方的现成的组件,把他们部署到异构环境中,节省了由自己制订整个方案所需的费用。(3)可伸缩性:企业必须要选择一种服务器端平台,这种平台应能提供极佳的可伸缩性去满足那些在他们系统上进行商业运作的大批新客户。基于J2EE平台的应用程序可被部署到各种操作系统上。例如可被部署到高端UNIX与大型机系统,这种系统单机可支持64至256个处理器。(这是NT服务器所望尘莫及的)J2EE领域的供应商提供了更为广泛的负载平衡策略。能消除系统中的瓶颈,允许多台服务器集成部署。这种部署可达数千个处理器,实现可高度伸缩的系统,满足未来商业应用的需要。稳定的可用性:一个服务器端平台必须能全天候运转以满足公司客户、合作伙伴的需要[7]。因为INTERNET是全球化的、无处不在的,即使在夜间按计划停机也可能造成严重损失。若是意外停机,那会有灾难性后果。JZEE38 东北石油大学本科生毕业设计(论文)部署到可靠的操作环境中,他们支持长期的可用性。一些JZEE部署在WINDOWS环境中,客户也可选择健壮性能更好的操作系统如SunS、laris、IBM05/390。最健壮的操作系统可达到99.999%的可用性或每年只需5分钟停机时间。这是实时性很强商业系统理想的选择。2.2Struts框架2.2.1Struts介绍Struts框架是一个基于J2EE规范并遵循MVC设计模式的开发框架,提供了对开发遵循MVC设计模式应用系统的底层支持,主要实现技术是Servlet,JSP和标签。它简化了J2EE应用的开发,实现了表现逻辑的分离。使用Struts技术极大的提高了J2EE应用的开发效率,并且使应用系统具有更好的维护性和可扩展性[8]。Struts与Tomcat,Turbine等众多的Apache项目一样,属于开源软件,使开发者能更深入的了解其内部实现机制f211。为了使开发者在构建基于JavaServlet和JavaServerPages(JSP)技术的Web应用时更加容易,Struts开放源码框架的创建。它提供了一个统一的标准框架给开发者,开发者通过使用Struts作为基础,可以更专注于应用程序的商业逻辑。Struts是实现了MVC(Model-View-Controller,模型一视图一控制器)模式的框架。2.2.2Struts原理介绍在Struts1框架中的一个请求处理步骤的工作原理如下:(1)客户端发出一个指向servlet容器的请求(tomcat)(2)这个请求会经过图中的几个过滤器,最后会到达FilterDispatcher过滤器。(3)过滤器FilterDispatcher是Struts2框架的心脏,在处理用户请求时,它和请求一起相互配合访问Struts2的底层框架结构。在web容器启动时,Struts2框架会自动加载配置文件里相关参数,并转换成相应的类。如:ConfigurationManager,ActionMapper和ObjectFactoryoConfigurationManager存有配置文件的一些基本信息,ActionMapper存有action的配置信息。在请求过程中所有的对象(Action,Results,Interceptors等)都是通过。句ectFactory来创建的。过滤器会通过询问ActionMapper类来查找请求中需要用到的Action。(4)如果找到需要调用的Action,过滤器会把请求的处理交给ActionProxyoActionProxy为Action的代理对象。ActionProxy通过ConfigurationManager询问框架的配置文件,找到需要调用的Action类[9]。(5)ActionProxy创建一个ActionInvocation的实例。ActionInvocation在ActionProxy层之下,它表示了Action的执行状态,或者说它控制的Action的执行步骤。它持有Action实例和所有的Interceptoro。(6)ActionInvocation实例使用命名模式来调用,当Action38 东北石油大学本科生毕业设计(论文)Invocation初始化时,根据配置,加载Action相关的所有Interceptor,通过ActionInvocation.invoke方法调用Action实现时,执行Interceptor。在调用Action的过程前后,涉及到相关拦截器(intercepetor)的调用。(7)一旦Action执行完毕,ActionInvocation负责根据Struts.xml中的配置找到对应的返回结果。返回结果通常是一个需要被表示的JSP或者FreeMarke:的模版,也可能是另外的一个Action链。在表示的过程中可以使用Struts2框架中继承的标签。2.3Hibernate框架2.3.1Hibernate介绍Hibernate是一个开放源代码的、非常优秀、成熟的O/RMapping框架,它对JDBC进行了轻量级的对象封装,它提供了强大、高性能的Java对象和关系数据的持久化和查询功能,使用面向对象的方法操作数据库,Java程序员能使用对象编程思维来操纵数据库。使用Hibernate可以大大减少操作数据库的工作量。Hibernate可以应用在任何使用JDBC的场合,既可在Java的客户端程序使用,也可在Servlet/JSP的WEB应用中使用。它能取代CMP,应用在EJB的J2EE架构中,完成数据持久化的重任,如图2-2所示。图2-2Hibernate原理图Hibernate的核心接口一共有5个,分别为:Configuration,SessionFactory,Session,Transaction,Criteria和Query。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。(1)Configuration接口38 东北石油大学本科生毕业设计(论文)Configuration对象用于配置并且启动Hibernate。Hibernate应用通过Configuration实例来指定对象关系映射文件的位置或者动态配置Hibernate的属性,然后创建SessionFactory实例[10]。(2)SessionFactory接口初始化Hibernate,充当数据存储源的代理,创建Session对象。一个SessionFactory实例对应一个数据存储源,应用从SessionFactory中获得Session实例。SessionFactory有以下特点:它是线程安全的,它应用的多个线程能共享同一个实例。它是重量级的,所以它的实例不能随意创建或销毁。如果应用只访问一个数据库,那只创建一个SessionFactory实例即可,该实例是在应用初始化的时候创建的。同理,如果应用同时访问多个数据库,就要创建一一对应的单独的SessionFactory实例。称SessionFactory是重量级的原因是因为它需要一个很大的缓存,用来存放预定义的SQL语句及映射元数据等。用户还能给SessionFactory配置一个缓存插件,这个插件被称为Hibernate的二级缓存,被工作单元读过的数据存放在该缓存,将来这些数据有可能会被其他工作单元重用,因此这个缓存中的数据能够被所有工作单元共享。一个工作单元通常对应一个数据库事务[11]。(3)Session接口Session接口负责保存、更新、删除、加载和查询对象,是Hibernate应用最多的接口。Session也被称为持久化管理器,它提供了和持久化相关的操作,如添加、更新、册除、加载和查询对象。Session不是线程安全的,它代表与数据库间的一次操作。Session有以下特点:设计软件的架构时,要避免多个线程共享同一个Session实例。实例化的Session是个轻量级的类,它的创建和销毁不需要消耗太多的资源。Session通过SessionFactory打开,所有工作完成后要关闭。如果不断地在程序中创建及销毁Session对象,会给系统带来不良影响,要合理使用。(4)Transaction接口Transaction接口是对实际事务实现的一个抽象,是Hibernate的数据库事务接口。该接口可以实现JDBC的事务、JTA中的UserTransaction,甚至是CORBA等跨容器的事务。这样的设计能让开发者使用一个统一事务的操作,能使项目在不同环境和容器之间方便地移植(5)Query和Criteria接口Query和Criteria接口用于执行数据库查询。Query和Criteria接口是Hibernate的查询接口,用于向数据库查询对象,以及控制执行查询的过程。Query实例包装了一个HQL查询语句,HQL查询语句和SQL查询语句有些相似,它引用类句及类的属性句,而不是表句及表的字段句。Criteria接口完全封装了基于字符串的查询语句,比Query接口更加面向对象,Criteria接口擅长执行动态查询Session接口的find()方法也具有数据查询功能,但它只是执行一些简单的HQL查询语句的快捷方法,它的功能远没有Query接口强大。38 东北石油大学本科生毕业设计(论文)2.4本章小结本章阐述了java的一些常用技术、J2EE的优势。以及实现本系统需要用到的框架。包括JSP技术、JDBC技术、Hibernate、Struts框架等等。确保了本系统运行的基础。38 东北石油大学本科生毕业设计(论文)第3章系统分析3.1系统开发环境确定(1)开发环境:系统采用Myeclispe10作为开发环境数据库采用微软的SQLserver2008进行组合开发。eclipse是一个开源的开发平台,Myeclipse作为Eclipse平台下的一个插件也备受很多开发者的青睐,我们才用它第一个它是一个比较轻量级的开发环境。同时它又是以一款功能强大的开发平台。SQLSERVER2008是微软的一款比较好的数据库系统适合于中小型数据库,我们选择SQLserver2008是以为系统是一个中心性系统.SQLSERVER2008有着微软的一贯作风简单易用。(2)操作系统采用windowXP;(3)技术框架:采用当前比较流行且通用的MVC框架STUCTS和持久化框架Hibernae进行开发。在前端框架上采用jquery和daowenUI进行组合开发,可以做到比较好的界面效果。3.2系统可行性分析开发任何一个系统,都会受到时间和资源上的限制。因此,在每一个项目开发之前,都要进行可行性分析,可以减少项目的开发风险,避免人力、物力和财力的浪费。下面就技术、经济、操作和法律四个方面来介绍。(1)技术可行性本系统开发工具是MyEclipse和Sqlserver数据库,开发语言是Java,主要使用了J2EE的技术,java是一种面向对象编程语言,简单易学而且灵活方便。协议供货管理系统总体上开发难度不高,数据库的设计和操作是本系统设计的核心。在大学期间学习过软件工程,软件测试,UML统一建模语言等课程,具备一定的系统分析、设计和测试能力。因此,完成系统实现在技术上完全具有可行性。(2)经济可行性如今是信息化时代,信息化管理可以使财务运输工作更加系统化、快速化、全面化。这样可以为企业带来较高的工作效益和经济效益,本系统对计算机配置的要求不高,企业机房更换下来的低配置电脑都可以完全满足需要,再者,企业在管理工作上的高效率和便捷性远远超过了开发本系统的成本,所以在经济上具有完全的可行性。(3)操作可行性38 东北石油大学本科生毕业设计(论文)本系统操作简单,输入信息页面大多数都是下拉框的选择形式,在某些页面,信息可以自动生成,无需输入,时间的输入也是用的日历控件,操作简便,对操作人员的要求很低,只需对WINDOWS操作熟练,加之对本系统的操作稍加培训即可工作,而且本系统可视性非常好,所以在技术上不会有很大难度。(4)法律可行性系统是自行开发的管理系统,是很有实际意义的系统,开发环境软件和使用的数据库都是开源代码,开发这个系统不同于开发普通的系统软件,不存在侵权等问题,即法律上是可行的。3.3总体功能系统的各个业务模块以及功能如图3-1所示图3-1系统功能模块图38 东北石油大学本科生毕业设计(论文)3.4系统安全需求数据库安全性是数据能被集成共享的关键之一。汽车维修保养管理系统采用以下安全措施保证系统安全性:(1)用户识别。系统对每一位用户设置了用户帐户,用户登录系统时要输入正确的口令,只有合法用户才能进入系统。(2)角色管理。不同角色的用户拥有不同的访问权限,防止用户对数据库进行非法操作。(3)建立日志文件,跟踪记录用户对系统每一次操作的详细情况。(4)建立数据定期备份机制。3.5用户界面需求3.5.1用户界面设计原则用户界面是系统与用户之间的接口,也是控制和输入输出数据的主要途径。对用户而言,界面就是系统,友好的用户界面可以提高整个系统的使用效率。用户界面设计与用户需求之间有极其密切的关系,设计时需要综合考虑用户的目标、专业水平、艺术性等诸多因素。用户界面一般应该遵循以下几个原则:(1)简单化。用户界面一目了然,操作简单,尽量减少需要用户输入的参数。(2)标准化。用户界面所用的术语应该具有标准性和一致性。直接显示给用户的图、表、数据等都应当模拟真实的图形显示和表格格式,遵从用户的工作习惯。(3)可视化。操作过程可视化,使用户可以了解整个操作的过程。(4)可读性。整个界面应该清晰简洁,易于阅读,便于用户理解,界面层次分明,布局合理,以最简洁的方式提供用户所需的信息。总之,用户界面设计应坚持友好、简便、实用、易于操作的原则。3.5.2界面设计方式从用户与计算机交互的角度来看,界面设计包括菜单方式、会话方式、操作提示方式,以及操作权限管理方式等。(1)菜单方式。菜单是信息系统功能选择操作的最常用方式。按照目前软件所提出的菜单设计工具,菜单的形式可以是下拉式、弹出式的,也可以是按钮选择方式的。(2)会话管理方式。38 东北石油大学本科生毕业设计(论文)在所有的用户界面中,几乎都会遇上人机会话问题。最为常见的是:当用户操作错误时,系统向用户发出提示和警告性的信息;当系统执行用户操作命令遇到多种可能时,系统会要求用户进一步说明;系统定量分析的结果通过屏幕向用户发出控制型的信息等。一般的会话系统设计必须满足会话的基本要求,如画面清晰、形象直观、明了、简洁,具有容错和纠错的能力,提供信息汉字化、图形化、表格化等。在语音会话方式还没有广泛使用的今天,会话的基本工具是键盘、屏幕和打印机,常用的方式是回答式、菜单式、表格式和图形式。(3)提示方式。对于用户的输入错误、操作错误做出明确提示,并给出明确指示。按照这种界面设计方式,用户可以方便快捷的输入数据,清晰的了解事件的处理流程,消除了在使用过程中对数据进行误操作的可能性3.6技术线路本系统根据需求将开发一个基于B/S结构的系统,系统开发采用的技术路线:(1)系统采用JavaSSH(Struts2+Spring+Hibernate)框架,其中Struts实现MVC,Spring负责架构的结合,Hibernate进行数据的持久化。SSH是典型的J2EE三层结构,分为表现层(V)、控制层(C)和模型层(M)。三层体系将业务规则、数据访问及合法性校验等工作放在控制层处理。客户端不直接与数据库交互,而是通过控制层建立连接,再由控制层与数据库交互,表现层是传统的JSP技术。(2)采用JSON进行数据交换。JSON提供了一种更适合Ajax应用的标准数据交换格式。JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。与XML相比,JSON更易于在客户端处理数据,XML比较适合于标记文档,而JSON却更适合于时行数据交换处理。(3)采用Ajax在不刷新页面的情况下访问服务器处理数据,并根据数据的处理结果对页面作出即时更改,改善用户体验。3.7本章小结本章就本次设计进行了技术可行性和运行可行性分析。对用户安全需求和界面设计方式做了详细的介绍。最后对技术线路进行了总结。38 东北石油大学本科生毕业设计(论文)第4章系统设计与实现经过需求分析阶段的工作,接着进行数据库设计,包括实体的确立,实体关系的确立,数据表的创建及每个表各种字段的属性的确立等。4.1系统设计的总体原则为了实现计算机管理的需要,使管理既有科学性又实用方便,该系统采用了以下原则:(1)实用性系统是一个基于网络技术、实用性很强的信息系统,系统应能替代繁琐重复性的手工劳动,设备及软件易于操作、维护、管理,界面宜人友好。(2)开放性系统是基于网络的,因此必须采用开放的系统设计原则,保证各部分协调工作。(3)安全可靠性安全可靠是一个应用系统的灵魂,一个极小的差错,可能会造成整个系统的瘫痪,甚至可能造成企业的巨大损失。因此系统设计必需把安全性、可靠性、容错性放在首位。(4)先进性系统设计、运行平台、开发工具、体系结构、数据库选型、硬件设备选型等,要符合主流技术发展方向。(5)可操作性与易用性系统在设计与实施中要考虑系统面对的用户,使得系统使用操作、开发维护、日常管理等工作简单易用,符合开发维护人员和各类使用者的操作习惯,减轻其日常工作量,提供友好的用户界面。(6)经济性在满足上述原则的基础上,应尽可能降低项目费用,追求最佳的性能价格比。一方面,应根据现有条件,设计系统另一方面,系统设计中应尽量避免不必要的复杂化,各模块应尽量简洁,以便缩短处理流程、减少处理费用。4.2数据库设计4.2.1数据库设计特点数据库建设是硬件、软件38 东北石油大学本科生毕业设计(论文)和干件的结合,三分技术,七分管理,十二分基础数据,技术与管理的界面称之为“干件”。数据库设计应该与应用系统设计相结合。结构(数据)设计:设计数据库框架或数据库结构。行为(处理)设计:设计应用程序、事务处理等。结构和行为分离的设计,传统的软件工程忽视对应用中数据语义的分析和抽象,只要有可能就尽量推迟数据结构设计的决策早期的数据库设计致力于数据模型和建模方法研究,忽视了对行为的设计。4.2.2数据库概念设计通过第三章对本系统的需求分析,明确了系统的总体目标、各个子系统的功能和数据流程,可以据此分解出数据实体,并确定实体之间的关系。针对系统业务的需求,通过对工作过程的内容和数据分析得出系统的领域模型图,如图4-1所示。38 东北石油大学本科生毕业设计(论文)图4-1系统E-R4.2.3数据库逻辑设计本系统中需要用到的表有:后台用户信息表(表38 东北石油大学本科生毕业设计(论文)4-1),员工信息表(表4-2),客户信息表(表4-3),客户分类信息表(表4-4),保单信息表(表4-5),在线反馈信息表(表4-6),保险信息表(表4-7),产品分类信息表(表4-8),理赔信息表(表4-9)。表4-1后台用户信息表列名注释主键外键类型id编码是否intusername用户名否否varcharpassword密码否否varcharemail邮箱否否varcharcreator创建人否否varcharcreatetime创建时间否否DateTimetel电话否否varcharsex性别否否varcharxiangpian相片否否varcharlogtimes登录次数否否int表4-2员工信息表列名注释主键外键类型id编码是否intname姓名否否varcharsex性别否否Varcharidcardno身份证否否varcharbirthday生日否否DateTimeage年龄否否intxiangpian相片否否varcharjiguan籍贯否否varcharaihao爱好否否varchartel电话否否varcharshengao身高否否varchartizhong体重否否varcharaddress住址否否varcharregisterdate注册日期否否DateTimepassword密码否否varcharhkleixing户口类型否否varchardes备注否否varchar表4-3客户信息表列名注释主键外键类型id编码是否intaccountname账户名否否varcharname姓名否否varcharsex性别否否varcharjiguan籍贯否否varchartel电话否否varchar38 东北石油大学本科生毕业设计(论文)password密码否否varcharxiangpian相片否否varcharyue余额否否FLOATlogintimes登录次数否否intidcardno身份证号否否varcharregdate注册日期否否DateTimedizhi地址否否varcharaihao爱好否否varchareamil邮箱否否varchardes介绍否否Textkhfenlei客户分类否否varchar表4-4客户分类信息表列名注释主键外键类型id编码是否intname分类名否否varchardes备注否否varchar表4-5保单信息表列名注释主键外键类型id编码是否intddno订单号否否varchartitle标题否否varcharspno商品号否否varcharspname商品名否否varcharkhaccountname客户账户否否varcharkhname客户名否否varcharshuliang数量否否intxiadanren下单人否否varcharxdtime下单时间否否DateTimetotalfee总金额否否FLOATsptupian商品图片否否varchardes说明否否varchar表4-6在线反馈信息表列名注释主键外键类型id编码是否inttitle标题否否varchardcontent内容否否Textlwren留言人否否varcharreplyren回复人否否varcharreplycontent回复内容否否Textpubtime留言时间否否DateTime38 东北石油大学本科生毕业设计(论文)status状态否否varchar表4-7保险信息表列名注释主键外键类型id编码是否intpno产品编号否否varcharpname产品名称否否varcharxtype分类否否Varcharkmtime开卖时间否否DateTimedes介绍否否Texttupian图片否否varchar表4-8产品分类信息表列名注释主键外键类型id编码是否intname名称否否varchardes说明否否Text表4-9理赔信息表列名注释主键外键类型id编码是否inttitle标题否否varcharkhaccountname客户账户否否varcharkhname客户姓名否否varcharjine金额否否FLOATstatus状态否否varcharsqtime申请时间否否DateTimetel联系电话否否varchardes理赔描述否否varchar4.3用户界面设计4.3.1用户界面设计原则用户界面是系统与用户之间的接口,也是控制和输入输出数据的主要途径。对用户而言,界面就是系统,友好的用户界面可以提高整个系统的使用效率。用户界面设计与用户需求之间有极其密切的关系,设计时需要综合考虑用户的目标、专业水平、艺术性等诸多因素[12]。用户界面一般应该遵循以下几个原则:(1)简单化。用户界面一目了然,操作简单,尽量减少需要用户输入的参数。(2)38 东北石油大学本科生毕业设计(论文)标准化。用户界面所用的术语应该具有标准性和一致性。直接显示给用户的图、表、数据等都应当模拟真实的图形显示和表格格式,遵从用户的工作习惯。(3)可视化。操作过程可视化,使用户可以了解整个操作的过程。(4)可读性。整个界面应该清晰简洁,易于阅读,便于用户理解,界面层次分明,布局合理,以最简洁的方式提供用户所需的信息。总之,用户界面设计应坚持友好、简便、实用、易于操作的原则。4.3.2界面设计方式从用户与计算机交互的角度来看,界面设计包括菜单方式、会话方式、操作提示方式,以及操作权限管理方式等。(1)菜单方式菜单是信息系统功能选择操作的最常用方式。按照目前软件所提出的菜单设计工具,菜单的形式可以是下拉式、弹出式的,也可以是按钮选择方式的。(2)会话管理方式在所有的用户界面中,几乎都会遇上人机会话问题。最为常见的是:当用户操作错误时,系统向用户发出提示和警告性的信息;当系统执行用户操作命令遇到多种可能时,系统会要求用户进一步说明;系统定量分析的结果通过屏幕向用户发出控制型的信息等。一般的会话系统设计必须满足会话的基本要求,如画面清晰、形象直观、明了、简洁,具有容错和纠错的能力,提供信息汉字化、图形化、表格化等。在语音会话方式还没有广泛使用的今天,会话的基本工具是键盘、屏幕和打印机,常用的方式是回答式、菜单式、表格式和图形式[13]。(3)提示方式对于用户的输入错误、操作错误做出明确提示,并给出明确指示。按照这种界面设计方式,用户可以方便快捷的输入数据,清晰的了解事件的处理流程,消除了在使用过程中对数据进行误操作的可能性。4.4本章小结本章给出了系统设计目标和思想,对系统功能模块进行详细的分析和设计,对数据库实体类和表字段进行设置。保证用户可以在登陆后对保单信息进行操作。38 东北石油大学本科生毕业设计(论文)第5章系统详细实现5.1公用模块实现在设计系统提出的一系列功能时,首先是对系统所选用的开发平台和开发框架进行选择以及采用一系列成熟的系统组件加快开发效率。在完成系统上述系统框架搭建与组件选择时,下一步是进行编码工作,需要先设计好系统的公用模块。系统在设计上采用比较通用的3+N的设计思想,也就是数据访问层、业务逻辑层、用户界面层,在每层上根据具体功能的复杂程度进行设计划分子层。第一步进行抽象系统中比较常用的数据访问操作基类,所有的业务逻辑调用数据访问层进行完成所需要的也逻辑操作。这里来封装数据访问基类,需要说明的一点是系统在进行数据库访问与持久化这一块采用的hibernate组件进行完成[16]。hibernate相关知识已经在第二章系统关键技术这一部分进行过相关概述。具体的功能接口代码见附录1。5.2用户登录实现后台管理员用户通过后台登陆界面进行登录管理系统的信息,登录需要对用户的用户名密码进行效验,用户通过填写用户名、密码信息、效验信息进行登录,其相关流程如图5-1所示。效果图如图5-2所示。38 东北石油大学本科生毕业设计(论文)图5-1登录流程图图5-2用户登录实现38 东北石油大学本科生毕业设计(论文)5.3员工信息管理系统员工信息管理主要通过后台获取员工信息,并绑定到相关页面,如图5-3所示。其获取员工信息关键代码见附录2。图5-3员工信息管理当用户点击编辑员工信息时,其效果如图5-4所示图5-4编辑员工管理当用户点击了修改之后执行修改操作其相关代码见附录3。5.4客户管理当点击客户管理时,界面效果如图5-5所示。38 东北石油大学本科生毕业设计(论文)图5-5客户管理业务人员登录后台系统后,点击客户管理系统获取当前系统中的客户信息进行显示,每页显示十个客户信息。如图5-6所示。图5-6新增客户5.5客户反馈处理用户反馈界面的效果如图5-7所示。38 东北石油大学本科生毕业设计(论文)图5-7客户反馈处理业务人员对客户反馈进行处理如图5-8所示:一旦处理以后,反馈信息就只能进行查看,不能再次回复。图5-8客户反馈处理5.6保险产品购买当用户点击保险产品购买时,界面效果如图5-9、5-10所示。38 东北石油大学本科生毕业设计(论文)图5-9保险产品购买图5-10保险产品购买5.7本章小结本章就系统的各个模块的程序进行了介绍,通过流程图和界面效果对系统进行详细的描述。对系统进行了调试并发现了部分难题,通过查阅资料、请教老师,最终把问题解决掉了。38 东北石油大学本科生毕业设计(论文)结论本文对保险产品管理系统进行了分析,在软件方面进行了详细的设计。通过对系统的调试,发现了问题并解决了问题,最终设计出基于struts框架的保险产品管理系统。总体设计采用分布式注入的思想,实现了利用实体类创建映射对数据库进行增删改查的操作。本系统的设计与开发利用struts框架和JSP技术。主要解决了保险购买、申请理赔、用户身份管理、客户反馈信息管理等问题。本系统的实现方便了保险工作人员全面地掌握保单情况等目的。主要实现功能的内容包括:可以实现对保险信息的查询功能,对保险信息和员工信息的录入功能,修改功能和删除功能。以及对客户反馈信息的处理。通过系统上述功能实现保险公司管理部门对于保险和员工信息的日常管理,已达到方便管理人员及时全面地掌握员工情况及保险购买情况的结果。本系统的创新点是开发了智能化、速度快、界面简洁的保险产品管理系统。在保证系统使用性能流畅的情况下同时完成了界面操作的简单和友好,可以让人一目了然。本次设计不仅考察了独立完成项目的能力软件设计的知识量,更强调在完成基本要求的基础上进行系统优化和完善,以达到最佳的设计结果。38 东北石油大学本科生毕业设计(论文)参考文献[1]飞思科技产品研发中心.JSP应用开发详解[J].北京:电子工业出版社,2004年.[2]耿祥义.JSP实用教程[M].北京:清华大学出版社,2007年.[3]史胜辉,王春明,沈学华.JavaEE基础教程[M].北京:清华大学出版社,2010年.[4]王倩宜,李润娥,李庭晏.统一用户管理和身份认证服务的设计与实现[J].实验技术与管理2004,30(3):236~239.[5]刘春晓,孟祥福,李昕.基于Jboss的数据库连接池研究与实现[J].微处理机:2008,29(1):86-88.[6]张海藩.软件工程导论[M].北京:清华大学出版社,2010.[7]张英.旅游网站的研究探讨[J].知识经济,2011年第22期.[8]曾举臣.我国旅游网站发展现状浅析[J].商业经济,2012年第4期.[9]孙秀,曲军.城市旅游网站的设计与实现[J].探索与争鸣,2011年第5期.[10]苏林忠、冀翼.基于JSP技术的动态WEB开发[J].河南师范大学学报(自然科学版),2011年第4期.94-97.[11]程文.基于JSP开发动态网站的设计与实现[J].现代计算机,2002,总第一四九期:47-50.[12]田珂,谢世波,方马.J2EE数据持久层的解决方案[J].计算机工程,2003,29(22):93-95[13]姚昱旻,刘卫国.Android的架构与应用开发研究[J].计算机系统应用,2008,17(11):110-112.[14]D.Calvanese,G.deGiacomo,M.Lenzerini.RepresentingandreasoningonXMLdocuments:adescriptionlogicapproach[J].JournalofLogicandComputation.OxfordUniversityPress1999,9(3)295-318.[15]WarrenJ.Hedley,MelanieR.Nelson,DavidP.Bullivant,PoulF.Nielsen.PhilosophicalTransactions:Mathematical,Physical&EngineeringSciences1999,392,25.[16]S.J.H.Yang,I.Chen,C-C.Chen,C-H.Chu,K.H.W.Shen,C-W.Lan.BuildingXML-BasedUnifiedUserInterfaceSystemunderJ2EEArchitecture.AnnalsofSoftwareEngineering.KluwerPublishers2001,12,1241-256.38 东北石油大学本科生毕业设计(论文)致谢在这几个月的毕业设计中,使我深深的认识到完成一个系统设计是一个既庞大又细致的工作。由于我是网站制作的新手,对制作一个这样的完整的系统有着许多的困难,而且我个人的基础只是很薄弱,对于这项设计所使用的软件也有很多不清楚的地方,因此在实际的操作当中很多得益与同学的帮助,才使我完成了本次设计。而在毕业设计的这段期间,我们要特别感谢何文明老师。在毕业设计期间,何老师诲人不倦的精神,严谨治学的态度,以及对我们的细节的要求都使我深深难忘,从中受益非浅。从他身上我学到了很多很多,这些都将指导我今后的学习。而他在我的毕业设计过程中给予了我们热情的帮助,并且提供网站所需要的各项文字素材,从整个网站的需求分析、总体设计及某些细节之处到论文的撰写都给予了具体指导。为我们以后从事计算机的工作积累了许多经验。通过几个月的辛勤工作,一个“保险产品管理系统”可以说是大体完成了。由于时间仓促。所以在有些地方肯定存在了许多的不足之处。希望大家能给我提出宝贵的意见。最后,感谢我的老师、同学、朋友一直以来对我的支持及无私的帮助,在与他们共度的大学学习、工作、生活中,使我收益非浅,学到了许多知识,感谢他们为我所做的一切,将使我永远难忘。38 东北石油大学本科生毕业设计(论文)附录1公共接口代码PublicclassDALBase{/****@paramtablename*@Paramfilter*****/publicstaticListgetEntity(Stringtablename,Stringfilter);/*******@paramo实体对象*@return*/publicstaticBooleanupdate(Objecto);publicstaticBooleansave(Objecto){Sessions=HibernateSessionFactory.getSession();Transactiont=s.beginTransaction();booleanstatus=true;try{s.save(o);s.flush();t.commit();s.close();}catch(HibernateExceptione){e.printStackTrace();status=false;}returnstatus;}publicstaticBooleanupdate(Objecto){38 东北石油大学本科生毕业设计(论文)Sessions=HibernateSessionFactory.getSession();Transactiont=s.beginTransaction();booleanstatus=true;try{s.update(o);s.flush();t.commit();s.close();}catch(HibernateExceptione){e.printStackTrace();status=false;}returnstatus;}/****/publicstaticBooleandelete(Objecto){Sessions=HibernateSessionFactory.getSession();Transactiont=s.beginTransaction();booleanstatus=true;try{s.delete(o);t.commit();s.close();}catch(HibernateExceptione){status=false;}returnstatus;}publicstaticintdelete(Stringtablename,Stringfilter){Sessions=HibernateSessionFactory.getSession();Transactiont=s.beginTransaction();StringHQL="deletefrom"+NameUtil.toFirstUpper(tablename)+(filter==null?"":""+filter);System.out.println("HQL="+HQL);SQLQueryq=s.createSQLQuery(HQL);inti=0;38 东北石油大学本科生毕业设计(论文)try{i=q.executeUpdate();t.commit();s.close();}catch(HibernateExceptione){e.printStackTrace();System.out.println(tablename+e.getMessage());i=-1;}returni;}publicstaticObjectload(Classtype,Objectkey){Sessions=HibernateSessionFactory.getSession();Transactiont=s.beginTransaction();Objecto=null;try{o=s.load(type,(Serializable)key);}catch(HibernateExceptione){System.out.println(""+e.getMessage());}returno;}publicstaticObjectload(Stringtablename,Stringfilter){Listlist=getEntity(tablename,filter);if(list.isEmpty())returnnull;returnlist.get(0);}publicstaticBooleanisExist(Stringtablename,Stringfilter){Listlist=getEntity(tablename,filter);if(list.isEmpty())returnfalse;elsereturntrue;}38 东北石油大学本科生毕业设计(论文)/****@paramSQL查询SQL*@parampageindex当前页*@parampagesize页尺寸*@return返回需要查询的页记录*/publicstaticListgetRecords(StringHQL,intpageindex,intpagesize){Sessionsession=HibernateSessionFactory.getSession();Transactiont=session.beginTransaction();Listlist=null;System.out.print("SQL="+HQL);try{Queryquery=session.createQuery(HQL);System.out.println("first="+((pageindex-1)*pagesize));System.out.println("max="+(pageindex*pagesize-1));list=query.setFirstResult((pageindex-1)*pagesize).setMaxResults(pagesize).list();t.commit();}catch(HibernateExceptione){e.printStackTrace();System.out.print("系统出现异常"+e.getMessage());}if(session.isOpen())session.close();returnlist;}}38 东北石油大学本科生毕业设计(论文)附录2用户登陆代码privatevoidlogin(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse){Stringusername=request.getParameter("username");Stringpassword=request.getParameter("password");Stringusertype=request.getParameter("usertype");Stringaction=request.getParameter("action");Stringvalidcode=(String)request.getSession().getAttribute("validcode");Stringinputvalidcode=request.getParameter("validcode");if(validcode!=null&&!validcode.equals(inputvalidcode)){System.out.println("系统验证错误");request.setAttribute("errmsg","系统验证码错误");//分发请求参数dispatchParams(request,response);try{request.getRequestDispatcher("/admin/login.jsp").forward(request,response);}catch(ServletExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}catch(IOExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}return;}System.out.println("验证码="+validcode);if(usertype!=null&&usertype.equals("0")){Usersu=(Users)DALBase.load("users","whereusername=""+username+""andpassword=""+password+""");if(u!=null){HttpSessionsession=request.getSession();session.setAttribute("adminuser",u);try{response.sendRedirect(SystemParam.getSiteRoot()+"/admin/index.jsp");}catch(IOExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}38 东北石油大学本科生毕业设计(论文)}else{//分发dispatchParams(request,response);request.setAttribute("errmsg","用户与密码不匹配");System.out.println("系统用户登录失败");try{request.getRequestDispatcher("/admin/login.jsp").forward(request,response);}catch(ServletExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}catch(IOExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}}}38 东北石油大学本科生毕业设计(论文)附录3修改操作代码publicvoidupdate(ActionMappingmapping,ActionFormform,HttpServletRequestrequest,HttpServletResponseresponse){Stringforwardurl=request.getParameter("forwardurl");Stringid=request.getParameter("id");if(id==null)return;Qyzhiyuanqyzhiyuan=(Qyzhiyuan)DALBase.load(Qyzhiyuan.class,newInteger(id));if(qyzhiyuan==null)return;Stringname=request.getParameter("name");Stringsex=request.getParameter("sex");Stringidcardno=request.getParameter("idcardno");Stringbirthday=request.getParameter("birthday");Stringage=request.getParameter("age");Stringxiangpian=request.getParameter("xiangpian");Stringjiguan=request.getParameter("jiguan");Stringaihao=request.getParameter("aihao");Stringtel=request.getParameter("tel");Stringshengao=request.getParameter("shengao");Stringtizhong=request.getParameter("tizhong");Stringaddress=request.getParameter("address");Stringregisterdate=request.getParameter("registerdate");Stringpassword=request.getParameter("password");Stringyue=request.getParameter("yue");Stringhkleixing=request.getParameter("hkleixing");Stringdes=request.getParameter("des");SimpleDateFormatsdfqyzhiyuan=newSimpleDateFormat("yyyy-MM-dd");qyzhiyuan.setName(name);qyzhiyuan.setSex(sex);qyzhiyuan.setIdcardno(idcardno);try{qyzhiyuan.setBirthday(sdfqyzhiyuan.parse(birthday));}catch(ParseExceptione){e.printStackTrace();}qyzhiyuan.setAge(age==null?0:newInteger(age));qyzhiyuan.setXiangpian(xiangpian);38 东北石油大学本科生毕业设计(论文)qyzhiyuan.setJiguan(jiguan);qyzhiyuan.setAihao(aihao);qyzhiyuan.setTel(tel);qyzhiyuan.setShengao(shengao);qyzhiyuan.setTizhong(tizhong);qyzhiyuan.setAddress(address);try{qyzhiyuan.setRegisterdate(sdfqyzhiyuan.parse(registerdate));}catch(ParseExceptione){e.printStackTrace();}qyzhiyuan.setPassword(password);qyzhiyuan.setYue(yue==null?(double)0:newDouble(yue));qyzhiyuan.setHkleixing(hkleixing);qyzhiyuan.setDes(des);DALBase.update(qyzhiyuan);attachements(request,response,newInteger(qyzhiyuan.getId()).toString());binding(request,response);}38'