![[硕士论文精品]基于spring的留学信息平台的设计和实现_第1页](http://file.renrendoc.com/FileRoot1/2017-12/8/3dbd5a8f-a34c-499a-bf27-853452869ef1/3dbd5a8f-a34c-499a-bf27-853452869ef11.gif)
![[硕士论文精品]基于spring的留学信息平台的设计和实现_第2页](http://file.renrendoc.com/FileRoot1/2017-12/8/3dbd5a8f-a34c-499a-bf27-853452869ef1/3dbd5a8f-a34c-499a-bf27-853452869ef12.gif)
![[硕士论文精品]基于spring的留学信息平台的设计和实现_第3页](http://file.renrendoc.com/FileRoot1/2017-12/8/3dbd5a8f-a34c-499a-bf27-853452869ef1/3dbd5a8f-a34c-499a-bf27-853452869ef13.gif)
![[硕士论文精品]基于spring的留学信息平台的设计和实现_第4页](http://file.renrendoc.com/FileRoot1/2017-12/8/3dbd5a8f-a34c-499a-bf27-853452869ef1/3dbd5a8f-a34c-499a-bf27-853452869ef14.gif)
![[硕士论文精品]基于spring的留学信息平台的设计和实现_第5页](http://file.renrendoc.com/FileRoot1/2017-12/8/3dbd5a8f-a34c-499a-bf27-853452869ef1/3dbd5a8f-a34c-499a-bf27-853452869ef15.gif)
已阅读5页,还剩56页未读, 继续免费阅读
[硕士论文精品]基于spring的留学信息平台的设计和实现.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于SPRING的留学信息平台的设计和实现摘要随着世界经济全球化的发展,各国的经济、文化联系越来越紧密,交流越来越频繁,大批既懂专业又懂外语的国际复合型人才将成为入才市场上的新宠。这种情况下,留学市场逐渐升温,而传统的留学服务方式存在着信息不透明、形式单一等缺陷,随着网络的普及和电子商务技术的发展,网上留学信息平台的出现成了留学办理服务的发展趋势。留学信息平台把教育公司的专业咨询服务和具有的国内外合作院校、机构等资源更好的提供给广大用户,为广大学子提供一站式留学资讯服务和快捷可靠的在线申请平台。同时使公司内部的办公更加有效和规范化。此平台是集网站管理系统、客户关系系统、办公自动化系统于一体的大型电子商务平台。本文研究和阐述了基于SPRING的留学信息平台的设计和实现。留学信息平台采用轻量级框架SPRING实现,并结合STRUTS和HIBERNATE技术,实现了表现层、逻辑层和持久层的结构。使用UML建模语言和RATIONROSE建模工具,运用面向对象的方法,详细设计了在线问答模块、课程管理模块和课程申请模块。使用ECLIPSE开发工具实现了留学信息平台的代码编写,总结了留学信息平台实现过程中所用到的框架实现技术、AJAX技术和STRUTS标签技术。本文还对留学信息平台提供的功能和留学服务业务进行了详细分析和描述,并介绍了留学信息平台提供的搜索比较、在线申请和在线问答的独特功能。对于类似信息平台的建立有实际借鉴意义和参考价值。关键词信息平台留学服务SPRINGSTRUTSMVCHTTP/INFO3DOUCOM/口碑营销THEDESIGNANDIMPLE旺沦N皿ONOFTHESN兀YABROADINFORMANONPI。A的RMBASEDONSPRINGTECHNOLDGYWITHTHEDEVELOPMENTOFTHEECONOMYGIOBALTZINGONTHEEARTH,THERELATIONSHIPOFCULTUREANDECONOMYBETWEENEACHCOUNTRIESHASBEENMOREANDMOREDOSEANDTHEINTERCOMMUNICATIONHASBEENMOREANDMOREFREQUENTLYINTERNATIONALANDMULTIPLETALENTEDPEOPLEWITHENOUGHKNOWLEDGEONSPECIALTYANDFOREIGNLANGUAGEWILLBETHECHOICEFORTHEMARKETUNDERTHISENVIRONMENT,THEMARKETOFSTUDYABROADHASBEENWARMERBUT,THETRADITIONALSERVICESFORSTUDYABROADHAVETHESHORTAGE,SUCHASOPAQUEINFORMATIONANDLIMITEDMETHODSTHEPOPULARIZATIONOFNETWORKANDTHEDEVELOPMENTOFEBUSINESSLEADTHETRENDOFSTUDYABROADINFORMATIONPLATFORMFORAPPLYINGTHESESERVICESNESTUDYABROADINFORMATIONPLATFORMCONFORMSTHEPROFESSIONALCONSULTATIONSERVICESOFTHEEDUCATIONCOMPANIESANDTHEIESOURCESOFNATIVEANDABROADCOOPERATIVESCHOOLSANDORGANIZATIONS,PROVIDESTHEMTOTHECUSTOMERSITSUPPORTSACHAINOFRETAILSTORESSERVICESFORTHESTUDYABROADANDTHEFASTTRUSTVAPPLICATIONPLATFORMFORSTUDENTSITALSOMAKESTHEWORKINTHESERVICEAPPLYINGCOMPANYEFFICIENTLYANDCANONICALLY砀EPLATFORMISALARGESCALEDEBUSINESSPLATFORMINCLUDINGTHEWEBSITESMANAGEMENTSYSTEM,THERELATIONSHIPOFCUSTOMERSYSTEMANDTHEOAOMCIALAUTOMATIONSYSTEMTHEARTICLERESEARCHESANDDESCRIBESTHEDESIGNANDIMPLEMENTATIONOFMESTUDYABROADINFORMATIONPLATFORMBASEDONSP咖GTECHNOLOGYITISIMPLEMENTEDWITHTHELIGHTWEIGHTFRAMEWORKSPRING,WHICHCOMBINESWITHTHESTRUTSANDHIBERNATETECHNOLOGYITIMPLEMENTSTHESTRUCTUREOFTHETHREELAYERS,INCLUDINGUILAYER,LOGICLAYERANDPERSISTENCELAYERITUSESTHEUMLLANGUAGEANDTHERATIONALROSETOOLSFORMODELINGITDESIGNSTHEMODULESOFTHEONLINEQUESTIONSANDANSWERS,THECOURSEMANAGEMENTANDTHECOURSEAPPLICATIONTHECODESALEWRITTENWITHECLIPSESDKTHEPAVERSUMMARIZESTHEFRAMEWORKREALIZATIONTECHNOLOGY,THEAJAXTECHNOLOGYANDTHESTRUTSTAGINTHEPROCESSOFTHEDEVELOPMENT髓EARTICLEANALYSISANDDESCRIBESTHEFUNCTIONSANDSERVICESABOUTTHESTUDYABROADOPERATIONITALSOINTRODUCESTHESREIALFUNCTIONSOFTHESTUDYABOARDPLATFORM,SUCHASTHESEARCHANDCOMPARISON,ONLINEAPPLICATIONANDTHEONLINEQUESTIONSANDANSWERSPLATFORMITISHELPFULANDSETSAGOODEXAMPLEFORTHEESTABLISHMERITOFTHESIMILARINFORMATIONPLATFORMSKEYWORDSINFORMATIONPLATFORMSTUDYABROADSERVICESPRINGSTRUTSMVCHTTP/INFO3DOUCOM/口碑营销独创性或创新性声明本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所傲的任何贡献均已在论文中作了明确的说明并表示了谢意。申请学位论文与资料若有不实之处,本人承担一切相关责任本人签名圣互壁日期关于论文使用授权的说明本人完全了解北京邮电大学有关保留和使用学位论文的规定,即研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借阅;学校可以公布学镬1】全部或部分内容,可以允许采用影印、缩印或其它复制手段保存、汇编学位论文。本学位论文不属于保密范围,适用本授权书。本人签名导师签名11留学服务市场的发展第一章绪论随着经济全球化的发展,没有哪个国家会独立于世界经济之外对于新世纪的中国,在经济走向世界的同时,与其他国家之间的文化交流也越来越频繁。大批的既懂专业又值外语和管理的国际复合型人才将成为人才市场上的新宠。留学深造成为很多学生都有的愿望,越来越多的人向往出国接受教育,导致留学市场日渐火爆。与此同时繁琐的出国留学步骤和过程,又使人们不得不花费巨大的精力在各办理机构进行奔波。在这种情况下,出现了传统的留学中介,在这些中介的服务中,留学顾问通过同申请人面谈及电话交谈来了解申请人的要求,收集申请人的个人信息,从而提供全面的留学咨询服务。这在很大程度上简化了想留学学生的工作,但是这些中介存在着很多弊端首先,传统留学中介服务中留学者自主选择空间不大,只能被动接受留学中介推荐;其次,传统留学中介大多是暗箱操作,学生与学校之间的联系很有限度;再次,面对巨大的留学服务市场需求,无论国外教育机构还是国内教育机构都增加了新的服务内容。作为传统留学服务机构,留学中介的服务形式比较单一,服务内容有限,已经不能适应学生增长的这些信息的需求,所以必将面临着新的挑战;同时,传统的留学中介,良莠不齐,一些“黑中介”更是让消费者失去了信心,对选择留学中介持狁豫与怀疑的态度。传统留学中介的弊端越来越明显,随着互联网的普及和门户网站的发展,网上留学信息平台的出现就成了留学办理服务的发展趋势。在百度中使用关键词“留学网站”进行搜索,找到相关网页约1,550,000篇,在谷歌中搜索,则约有8,570,000项符合留学网站的查询结果。由此可见留学网站的信息化程度,以及留学网站竞争的激烈性。本文所介绍的留学信息平台就属于留学门户网站。留学门户网站属于专业门户网站的一种,聚焦于留学这个特定领域,市场针对特定人群的特定需要,专门提供专业、权威、全面的留学内容资讯和电子商务平台。汇集了大量留学指南、HTTP/INFO3DOUCOM/口碑营销签证攻略、海外生活等方面的资讯。通常,留学行业门户网站也提供新闻、论坛和聊天室服务,但它们都只和留学行业的特定市场,特定的人群有关,便于他们互相交流,主动得到资讯还有的留学行业门户两站提供更多服务,例如提供网上咨询、办理网上签证等,来吸引一批固定的、想出国留学、想了解更多留学信息和获得更多留学服务的用户。给他们带来方便快捷的体验,并可以节省金钱和精力。提高了咨询效率,打破了时间、空间的限制。12留学信息平台的提出华智国际教育有限公司与教育部合作成立并运作了澳大利亚项目办公室,致力于为中国学生提供方便快捷的赴澳留学办理服务。在公司已有传统专业留学咨询服务、具有国外合作院和国内合作机构资源的基础上,利用网络和电子商务的先进技术,澳大利亚项目办公室拟打造一个赴澳留学的信息平台,其宗旨是宣传我国出国留学政策,提升留学服务行业品质,为广大学子提供一站式留学资讯服务和快捷可靠的在线申请平台,并且含OA系统和权限管理系统在内的综合管理信息平台。同时,留学信息平台增加强大的搜索和比较功能,让学生完全自主、客观而理性的选择最适合自己的专业和院校,并且可以让学生直接、免费地向多家国外院校快捷办理入学申请,随时了解自己申请进度和申请结果。在线交流和提问,专家在线解答。让留学平台更加人性化,自主化留学平台就像是一个“网上超市”,把留学资源以超市的形态通过网络展现出来。留学平台在这些方面对已有的留学网站进行了创新和发展。留学信息平台采用J2EE架构,MVC设计模式,使用SPRINGHIBERNATESTRUTS框架实现,应用服务器软件采用WEBLOGIC92,数据库采用ORACLE9I,客户端应用基于IE60或更高版本浏览器。目前该留学平台已经对外发布,处于试运行阶段。13本文所研究的内容本文讨论了基于SPRING架构和MVC模式的留学信息平台的设计和实现方法,主要研究内容有1深入研究了目前流行的SPRING轻量级J2EE架构和MVC层次模型,设计了留学信息平台的总体架构;22通过调研留学平台需求和客户构成,给出了系统的总体结构和软件功能模块的具体划分;3使用面向对象的分析和设计方法,对留学信息平台的关键模块进行了设计;4研究了留学信息平台的模块的实现的关键技术和实现流程,并最终实现了该信息平台,给出了实现界面。14本人所做工作和论文结构在留学信息平台中,本人所做的工作包括1参加了留学信息平台的需求调查;2参加了留学信息平台的架构设计;3独立完成了在线问答模块、课程管理模块和课程申请模块的设计;4独立编码实现在线问答模块、课程管理模块和课程申请模块;5在测试阶段作了系统相关模块的改进。本文共为分六章,论文的结构安捧如下第一章引言,介绍了本课题的背景、课题内容、任务、本人所作的工作和论文结构第二章留学信息平台架构技术和设计模式,介绍了留学信息平台所用的架构技术SPRING、HIBERNATE、STRUTS,并对其MVC设计模式做了介绍。第三章留学信息平台需求分析和架构设计,对留学信息平台进行了需求分析和各功能模块的划分,并对平台架构进行了设计。第四章留学信息平台的关键模块设计,对留学信息平台的在线问答模块、课程管理模块和课程申请模块进行了功能描述和设计,用UML语言给出了三个模块的用例图、类图和顺序图。并设计了三个模块的数据库表。第五章留学信息平台的关键模块实现,对本人所作的三个模块给出了实现流程和实现的最终界面。介绍了实现过程中的关键技术。第六章结束语,对本文的工作进行全面总结,给出本文所取得的成果,指出存在的不足和改进方向。HTTP/INFO3DOUCOM/口碑营销第二章留学信息平台框架技术和设计模式21选择SPRING框架的原因SPRING是一个轻量级容器,它所带的包装器使许多不同的服务和框架更易于使用“1。轻量级容器接受任何JAVABEAN,而不是只接受特定类型的组件。SPRING又并非仅仅是一个轻量级容器,它使构建J2EE应用程序的JAVA开发人员可以直达现实域问题的核心,而不是在为域提供服务的细节方面花费大量时间。SPRING被设计为让使用它创建的应用尽可能少的依赖于他的API。在SPRING应用中的大多数业务对象没有依赖于SPRING。我们的所有程序代码中,并没有出现SPRING中的任何组件,无侵入性,我们的组件也并不需要实现框架指定的接口,因此可以轻松的将组件从SPRING中脱离,甚至不需要任何修改这在基于EJB框架实现的应用中是难以想象的。方便转移到其他框架中去。对于EJB编程,我们必须学习一个广泛使用的API,并通过新的工具和部署流程开展工作。程序员是容器所提供的服务的奴隶而借助于SPRING,我们可以选择自己的服务和持久性框架。进行POJ0普通JAVA对象编程,并使用配置文件为它们添加企业服务。SPRINGFRAMEWORK中目前最引人注目的。就是名为控制反转IOCINVERSEOFCONTR01或者依赖注入DIDEPENDENCEINJECTION的设计思想。下面简要介绍这两个思想。控制反转IOCINVERSIONOFCONTR01,就是由容器控制程序之间的关系,而非传统实现中,由程序代码直接操控。依赖注入DIDEPENDENCEINJECTION,即组件之间的依赖关系由容器在运行期决定,即由容器动态的将某种依赖关系注入到组件之中。这两种说法都是描述SPRING通过容器、配置文件,组织管理组件和代码,而不是由其自己进行调用,其本质是一样的。组件间的依赖关系减少,极大改善了代码的可重用性。SPRING的依赖注入机制,可以在运行期为组件配置所需资源。丽无需在编写组件代码时就加以指定,从而在相当程度上降低了组件之间的耦合。动态配置所需属性,实现了组件真正意义上的即插即用。这也是SPRING最具价值的特性之一。依赖注入有以下几种实现类型1接口注入借助接口来将调用者与实现者分离;2设值注入常用即通过类的SETTER方法完成依赖关系的设置,在。硼L4文件中设值,后台实际通过调用SETTER方法实现;3构造子注入即通过构造函数完成依赖关系的设定。除了SPRING在编程和管理上的优点之外,它还为数据存取提供了一个一致的框架,不论是使用的是JDBC还是0RMAPPING产品如HIBERNATESPRING确实使你能通过最简单可行的解决办法来解决你的问题,而这是有很大价值的本平台选用HIBERNATE作为ORMAPPING22SPRING框架和与HIBERNATE的集成221SPRINZ框架介绍SPRING框架是由7个模块组成的,如图2I所示“1整体上看,这7个模块为我们提供了开发企业级应用系统所需要的一切。但是我们不必将系统完全建立T在SPRING框架上,可以自由选择适合自己的系统模块,而不必使用其他模块图21SPRING框架图、SPRING的所有模块都是建立在核心容器之上的。容器规定如何创建、配置管理BEAN,以及很多SPRING的具体细节。当你配置系统的时候,就隐式地使用了这些类。提供服务的那些模块提供了系统所需要的服务,如AOP和持久层组成SPRING框架的每个模块都可以单独存在,或者与其他一个或多个模块联合实现。每个模块的功能如下“”I核心容器SPRING核心容器为SPRING框架提供了基础功能。在这个模块中包含BEANPACTORY这个类,它是所有基于SPRING框架的核心。BEANFACTORYSHTTP/INFO3DOUCOM/口碑营销采用工厂模式来实现LOC,它将系统的配置和依赖关系从代码中独立出来。2APPLICATIONCONTEXT上下文模块该模块是SPRING成为框架的原因该模块扩展了BEANFACTORY,增加了对118N国际化、系统生命周期事件以及验证的支持这个模块还提供了很多企业级服务,如电子邮件服务、JNDI访问、EJB集成,远程调用以及定时服务并且支持与模版框架如VELOCITY和FREEMARKER的集成3SPRING的AOP模块在AOP模块中,SPRING对面向切面提供了丰富的支持。这个模块是为SPRING应用系统开发切面的基础。4SPRING的JDBC及DAO模块编写JDBC代码时总是要写一些样板式的代码,如获得连接、创建语句、处理结果、最后关闭连接。SPRING的JDBC及DAO模块把这些样板式的代码抽象出来,使数据库代码变得简单,也可以避免因为释放数据库资源失败而引起的问题。这个模块还建立了一个容易理解的数据库异常层,它建立在各种数据库错误信息之上。以后就不用再去解释那些晦涩难懂的SQL错误信息了。另外,这个模块利用SPRING的AOP模块为SPRING系统中的对象提供事务管理服务。50R映射集成模块SPRING为喜欢使用ORMOBJECTRELATIONMAPPING工具的开发人员提供了OPT4模块。SPRING没有实现自己的ORM解决方案,但是它许多流行的ORM框架作了钩子程序,包括HIBERNATE、JDO等映射。SPRING的事务管理支持所有的0跚框架以及JDBC。6SPRING的WEB模块WEB上下文模块建立在应用上下文模块基础之上,提供了适合WEB系统的上下文。另外,该模块还支持多项其他面向WEB的任务,如透明处理多文件上传请求,自动将请求参数绑定到业务对象中等。这个模块中还包括对STRUTS的集成支持。7SPRINGMVC框架SPRING为WEB提供了全功能的MVCMODELVIEWCONTROLLER框架。虽然SPRING可以很容易的与其他MVC框架如STRUTS集成,但是SPRING的MVC框架利用IOC将控制逻辑和业务逻辑精细地分离开来。你可以自己声明如何将请求参数绑定到业务对象中。另外,SPRING的MVC框架还可以使用SPRING的其他服务,如信息国际化和验证服务。222使用SPRING集成HJBERNATEHIBERNATE是JAVA平台上一个功能全面的、开源的OR映射框架“。HIBERNATE支持开发符合常规JAVA理念的持久性类包括关联、继承、多态、复合以及JAVA集合框架。HIBERNATE查询语言HQL被设计成SOL的一个微型面向对象扩展,它是对象和关系世界之间的桥梁。HIBERNATE也支持用原始SQL或基于JAVA的标准和示例查询表达查询。HIBERNATE使用A也宰HBM硼1文6件把JAVA类映射到表,把JAVABEAN属性映射到数据库表。使用HIBERNATE,因为其有以下优势1它是开放源代码的,允许开发人员在需要的时候研究源代码,改写源代码,定制客户化功能,具有可扩展性2具有详细的参考文档,使用方便,容易上手3对JDBC做了轻量级封装,必要的话,用户还可以绕过HIBERNATE,直接访问JDBCAPI4HIBERNATE既适用于独立的JAVA程序,也适用于JAVAWEB应用,而且还可以在J2EE架构中取代C咿CONTAINERMANAGEDPERSISTENCE,由容器管理持久化,完成对象持久化的重任5HIBERNATE可以和多种EB服务器、应用服务器良好集成,并且支持几乎所有流行的数据库服务器由于SPRING没有提供ORMAPPING简称。脚层,因为SPRING不对已有的解决方案重新定义。基于HIBERNATE的以上优点,我们选用HIBERNATE为留学平台的持久化层O蹦解决方案SPRING对HIBERNATE的支持是第一级的,整合了许多IOC的方便特性,解决了许多典型的HIBERNATE集成问题。框架对HIBERNATE的支持符合SPRING通用的事务和数据访问对象DAO异常层次结构。SPRINGAOP提供了几个方面,可以为JAVABEAN声明事务。例如,TRANSACTIONPROXYFACTORYBEAN是个方便的代理类,能够拦截对现有类的方法调用,并把事务上下文应用到事务BEAN通过SPRINGDAO抽象,能够将具体的DAO技术的异常,比如HIBERNATEEXCEPTION、SQLEXCEPTION转换成IATAACCESSEXCEPTION为根的异常处理体系中针对HIBERNATE的SPRINGDAO抽象类是HIBERMATEDAOSUPPORT,开发者需要为它配置HIBERNATESESSIONFACTORY,通过其子类,开发者可以获得HIBERNATETEMPLATE,当然,也可以手工配置HIBERNATETEMPLATE,目前SPRING框架借助于SPRINGIOC和SPRINGAOP对HIBERNATE进行了最为有效的集成。23WC设计模式和STRUTS框架231IIVC设计模式MVC模式是J2EE平台的设计模式,是英文MODELVIERCONTROLLER的缩写,即把一个应用的输入、处理、输出流程按照MODEL、VIEW、CONTROLLER的方式进行分离,这样一个应用被分成三个层模型层、视图层、控制层嘲。7HTTP/INFO3DOUCOM/口碑营销视图VIEW代表用户交互界面,处于J2EE架构WEB层或者说是用户层,通常是JSPSERVLET,即页面显示部分。MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型MODEL处理。模型MODEL就是业务流程状态的处理以及业务规则的制定,处于J2髓中间层,通常用服务端的JAVABEAN或者EJB实现,即业务逻辑部分的实现。业务逻辑的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计可以说是MVC的核心。业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据保存持久化。我们可以将这个模型单独列出,所有有关数据库的操作只限制在该模型中控制CONTROLLER可以理解为从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求,也处于J2EE架构WEB层,通常用SERVLET来实现,即页面显示的逻辑部分实现。划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。控制层并不做任何的数据处理。例如,用户点击一个连接,控制层接受请求后,并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。因此,一个模型可能对应多个视图,一个视图可能对应多个模型模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。这实际上是一种模型的变化一传播机制。MVC的逻辑层次清晰,便于理解和使用,因此本平台选用MVC作为设计模式。232STRUTS框架和与SPRING的集成STRUTS是实现MVC的理想框架,对应于MVC的三个层次,STRUTS都有相应的实现技术。1视图视图主要是由JSP建立。STRUTS自身包含一组标记库,这是STRUTS的精华之一。灵活运用它们可以大大提高开发的效率。2模型STRUTS中的模型由一系列的BEAN来实现,可以自己定义业务逻辑BEANSTRUTS本身还提供了一种非常有用的BEAN,即FORMBEAN,它可以在模型和视图之间保存数据。3控制器STRUTS中的控制器主要是它自身提供的ACTIONSERVLET,而ACTIONSERVLET的核心就是STRUTSCONFIGXML配置文件,它包含了所有页面导航的定义。HCTIONSERVLET接受请求,并根据配置文件中的定义将控制转移到适3当的ACTION类。其余的控制逻辑和对模型的访问由ACTION类来完成。STRUTS的体系结构如图2_2所示田22STRUTS体系结构图STRUTS框架中相互协作的类主要包括ACTIONSERVLET、ACTION、ACTIONFORM、ACTIONMAPPING,它们的调用关系如图23所示图23STRUTS中玉要类的调用STRUTS中各个类的作用归纳如下;1ACTIONSERVLE类是STRUTS的命令部分,是框架的核心。ACTIONSERVLET创建并使用ACTION、ACTIONFORM、ACTIONFORWARD。STRUTS的控制器通过STRUTSCONFIGML文件配置ACTIONSERVLET,将事件映射到类的一个SERVLET在创建WEB项目时,程序员将扩展ACTION和ACTIONFORM来解决特定的问题。2ACTIONFORM类它维护WEB应用程序的会话状态。ACTIONFORM是一个抽象类,必须为每个表单输入模型创建该类的子类。输入表单中的数据能够直接从请求流中提取出来,并转移到ACTIONFORM类中3ACTION类它是业务逻辑的一个包装。但是ACTION类要控制应用程序的流程,丽不应该控制应用程序的逻辑。4ACTIONMAPPING类它包含有关特定事件如何被映射到特定ACTION类的信息。输入事件通常在HTTP请求表单中发生,SERVLET容器将H订P请求转换为HTTP/INFO3DOUCOM/口碑营销HTTPSERVLETREQUEST。控制器查看输入事件,并将请求分派给某个ACTION类。STRUTSCONFIGXML中的配置信息就转换成一组ACTIONMAPPING,将其放入ACTIONMAPPINGS容器中ACTIONSERVLET通过EXCUTEO方法将ACTIONMAPPING传递给ACTION类这样就便ACTION可访问用于控制流程的信息。STRUTS框架里一次完整地用户请求处理流程是当控制器组件接收到一个来自用户的HTTP请求时,就开始查找针对这个请求的动作映射,再检查是否曾经创建过相应的动作对象ACTION实例,如果没有,则调用ACTIONMAPPING生成一个动作对象,控制组件会保存这个动作对象供以后使用。接着调用ACTIONMAPPING的方法得到ACTIONFORM对象。然后把这个ACTIONFORM对象当作参数传递给动作对象的EXECUTE0方法。这个方法结束后会返回给控制组件一个ACTIONFORWARD对象控制组件从这个对象中获取下一个视图的路径或重定向属性。如果为重定向属性,则调用HTTPSERVLETRESPONSE的方法显示下一视图,否则相继调用REQUESTDISPATCHER,SERVLETCONTEXT续传HTTP请求到下一个视图。STRUTS的组件相互协作完成了整个框架的运作。SPRING为了集成STRUTS,专门提供了ORGSPRINGFRAMEWORKWEBSTRUTS包,ACTIONSUPPORT在集成SPRING上下文上起到很重要的作用。SPRING和STRUTS使能应用需要借助于ACTIONSUPPORT,才能够使STRUTSACTION访问到SPRINGAPPLICATIONCONTEXT。开发继承于ACTIONSUPPORT的ACTION,在这些ACTION中就可以使用到SPRING受管3AVABEAN借助于SPRINGAPPLICATIONCONTEXT的GETBEANO方法获得它们。进而,就可以享受到业务逻辑、安全服务等。开发ACTIONSUPPORT的子类是非常简单的事情,它同开发LO眺STRUTSACTION子类几乎不存在任何差别。LO第三章留学信息平台需求分析和架构设计31平台用户分析与建设目标为了把教育公司的专业咨询服务和具有的国内外合作院校、机构等资源更好的提供给广大用户,并且使公司内部的办公更加有效和规范化,拟建立留学信息平台。此平台是集网站管理系统、客户关系系统、办公自动化系统于一体的大型电子商务平台分析留学信息平台的用户构成主要有以下几种1学生用户想在网上得到有效留学信息,通过快速的查找、比较、咨询,确定最合适的申请学校,然后能得到相应的培训,方便的办理申请、出国等手续2学校用户与公司合作的院校,通过留学平台宣传、发布院校信息、介绍院校情况和课程设置、处理学生在网上递交的申请。3机构用户与公司合作的各种提供服务的机构,其中的培训机构可以发布机构的信息和开课的信息,处理学生递交的课程申请。其他的例如银行、体检机构只发布机构信息,便于学生选择。4公司内部用户借助留学信息平台进行办公,管理平台的数据,为学生提供咨询,协助学生办理出国流程,审核学生、学校、机构的有效性和对其分配权限基于以上用户角色和需求,本平台的建设目标大致可归纳为如下几个方面1为学生提供一个实现网上快捷办理留学并获取与留学相关的所有信息的平台可以让学生直接、免费地向多家院校快捷办理入学申请,随时了解自己申请进度和申请结果。在线交流和提问,专家在线解答。2为学生提供一个详细了解和比较国外院校和其专业的快捷机制。增加强大的搜索和比较功能,让学生完全自主、客观而理性的选择最适合自己的专业和院校。3为海外合作院校和国内合作机构提供一个低费用高效能的市场推广渠道与快捷处理学生申请和资讯的平台。4为公司员工建立自动办公和资料管理的平台。每个人的任务明确,权限明晰。HTTP/INFO3DOUCOM/口碑营销32平台建设原则1先进性采用当今国内、国际上先进和成熟的计算机技术,使新建立的留学信息平台能够最大限度地适应今后因特网技术发展变化和业务电子化发展的需要。从目前国内发展来看,系统总体设计的先进性原则主要体现在采用留学信息平台架构和技术的先进。2实用性最大程度地满足实际工作的要求,是留学信息平台在建设过程中所必须考虑的一种系统性能,它是留学信息平台对用户的基本承诺。界面要简洁美观、简单易学、提供在线帮助、提示和必要的操作验证,方便使用,开发均应充分考虑各种实际业务的实际需求。3可扩展性系统设计除了可以适应目前的业务需要以外,还要充分考虑用户目后业务发展的需求,随着业务量的扩大,栏目的增加以及应用范围的拓展,提供模版管理功能,可以由用户自己增加模块,不需改动代码。使平台具有良好的可伸缩性、良好的可管理性,避免不必要的多次编程和大量的技术支持人员,便于对系统进行统一管理、统一监控、降低管理成本。另外因为本平台要面向很多国家,因此要考虑到系统的语言可扩展性,根据浏览器的语言设置自动变化页面显示的语言。4安全性通过权限管理和角色验证来保证系统和数据的安全性和可靠性,提供操作和可使用功能的权限控制。采用成熟的产品,尤其是在系统运作、性能改善、可扩展性等方面采用成熟的软硬件,并且有实施大型项目的能力和保障。33平台功能描述留学信息平台的功能模块划分成公共模块、办公模块、留学业务模块和系统管理模块四类。系统的整体功能框架如图3所示12图3L留学信息平台总体功能框架图下面详细介绍各模块的功能需求。331公共模块公共模块是留学信息平台的目标用户都要用到的模块。包块消息中心模块、账户管理模块、全文搜索模块和在线问答模块。1消息中心模块留学信息平台建立消息中心,注册的会员、机构、学校用户和公司内部员工都有一个个人的邮箱,可以在平台内部发送、接收信息,分类管理自己收到的信息。并且在申请学校课程和审核学生申请时,平台可以自动发送或回复短信息。消息系统可以向外网发送EMAIL。邮箱内有通讯录管理功能,能提供多层的联系人管理机制2账户管理模块。按照平台用户的种类不同,提供不同的账户管理服务。对于学生用户,提供个人资料管理、个人简历管理和收藏夹管理等对于学校用户,提供学校资料管理、专业资料管理、照片资料管理等。对于机构用户,提供机构资料管理、课程资料管理等。3搜索比较模块。留学信息平台的核心亮点功能。提供方便快捷的对留学平台提供的各种信息搜索,内容上包括资讯搜索、图片搜索、院校搜索、专业搜索、机构搜索、在线问题搜索等,形式上包括模糊搜索、固定条件搜索、条件组合搜索等,并且可以订制搜索条件和搜索显示内容。还提供对多个搜索的对象针对院校、专业、机HTTP/INFO3DOUCOM/口碑营销构等进行比较的功能。用户可以对其对应的属性进行比较,便于用户做出决定。4在线问答模块。效仿比较流行的门户网站,比如新浪的“爱问”、百度的“知道”,本留学信息平台建立了网上在线问答模块,公司专门的顾问也会解答用户提出的问题便于广大用户的在线交流,迅速找到自己所需的答案332办公模块办公模块是供公司内部的办公人员所用,提供网上自动化办公的功能。包括工作管理模块、财务管理模块、客户管理模块和资讯管理模块1工作管理模块。工作管理模块,是用来协调和管理公司员工的工作情况。包括上级对下级分派或者修改工作任务,察看下属完成工作的情况。下属得到工作任务,执行并修改任务的状态。每个人还有工作日程表,便于提醒和管理自己的工作2财务管理模块。公司内部的财务管理。主要是佣金的收取,还有机构会员的广告费用等,比如服务费、申请费、学费、签证费等。提供财务明细的查询、分类、维护等功能。3客户管理模块。客户管理模块是公司管理学生用户、机构用户的功能模块。分为两个方面,一个是对学生的管理,对学生信息的查询统计,具体信息包括会员信息、申请信息、OFFORACLEL刮PROPAWJDBCORACLCTHIN19216822081521OVEFS眦IILO,OR扯LEJDBC也如冒0协DCIF贯吲印OL增妒,ORG姗妇MA搬DIALLOFACMIDIALI捌N,WORKSOFI,APPHC枷伽CM耐APPII训删水AHDNAMEFFI”伍M柚AGCF在SERVICE中定义了事务处理和数据存取DA0,这体现了SPRING的面向切面的事务服务和依赖注入,执行过程中,标记引用的每一个类都会自动获得一个对象。4HIBERNATEVO_CONFIGXML文件是一个HIBERNATE数据映射文件全局描述文件,所有子配置文件都在此注册。5HIBERNATEV0_EQUESTIONXML是在线问答模块的数据库配置文件,里面定义了此模块中的两个数据表类。COMWORKSOFLAPPFICATIONALRPMODULEEQUESTIONDTOTEASKVI翻帕_COM啊帕DM聊H刚。也川印MODILLEAQIL嘲DOMDTO1EAN踯咐州EW6STRUTSCONFIGML定义TSTRUTS结构的ACTION类,ACTIONMAPPING路径,这个路径可以是一个新的JSP页面,也可以是DO函数,在函数里继续处理请求。FOLWARDMME“PREQEE出ONVIEW“PETH“EQUEMIONDOADIONVIEW“DIREC卢”MLE”B其中的REDIRECT属性为真使页面加载时清除REQUEST中存储的属性而重新定向在ACTION里的业务调用统一在WOKSOFTSERVICELOCATOR里注册。注册方法PUBICTCSTSERVICEGETTESTSERVICEORETURNOB酬嘲辨撂DOE”TESSERVI。,TESTSERVICECLASS,TME;在ACTION里调用方法GOBAIKM钒G矗W吲翮DCD蝴LAFOGETTEUSERVICEO;ACTION继承STRUTS的BASEACTION类,ACTION中的EXCUTE0方法,接收页面的请求,获取请求中的ACTION属性,并且转到相应的处理函数,或者直接MAP到新的页面异常处理本框架异常分为WEB、SERVICE、DAO层异常,DAO层异常不需要捕获,统一由框架处理,而WEB、SERVICE业务异常需由自己处理,分别继承WEBEXCEPTION、SERVICEEXCEPTION。5I2AJAX技术留学信息平台对用户动态和灵敏的响应,因此在判断提交表单是否合法和实现几个下拉框内容连续更新的方面,大量使用了AJAX技术。AJAX有如下优势1减轻服务器的负担。HTTP/INFO3DOUCOM/口碑营销AJAX的根本理念是“按需取数据”,所以最大可能的减少了冗余请求和对服务器造成的负担。2无需刷新整个页面,减少用户心理等待时间。、AJAX是用LLHTTPREQUEST发送请求得到服务端应答数据响,在不重新载入整个页面的情况下用JAVASCRIPT操作DOU最终更新部分页面,所以在读取数据的过程中,用户所面对的也不是白屏,而是原来的页面状态或者可以加一个提示框让用户了解数据读取的状态,只有当接收到全部数据后才更新相应部分的内容,而这种更新也是瞬间的,用户几乎感觉不到。3更好的用户体验。4基于标准化技术,得到几乎所有浏览器的支持,并且不需要下载插件。5AJAX使WEB中的数据与表现实现了很好的分离下面是在线问答模块判断所提问题是否已经存在的JAVASCRIPT和对语句的注解。FUNCTIONCHECKNAMEOWARTITLEDOCXENTGETELEMENTBYLDFIFLE5VALUE;NDOCUMEMFORM2TITLE;IFN1GTHNULLI札LGLH;。1ICHCCKLAWLCSSNRCTUM僦SE;抛BEDDAWL嚣SNME是判断标题中是否含有非法字符ELSEFORVATI;O;LG山;HIFOCHECKLAWLESSN田RETNMFALSE;,CREATEXMLHTTPREQUCSTO;XMLHWOP”POST“,“EQUESTIONDOACTIONCHECKNAME”;XMIHTTPSETREQUESTHEADE“CONTENTTYPE“,”APPLICAFIONXWWWFORMUFLENCODEDXMLHUPONREADYSTATECHANGECHECKNAMECANBACK;XMLHTTPSEND”LITLEETITLE;,艉交XMLHTTPREPUEST,TITLE为参数FUNCTIONCHECLMAMECALLBACK0F捌断返回状态,显示结果到JSP页面VATTITLEDOCUMCMGETELEMENTBYLD”TIFLE“VALUE;I_FXMMTTPXEADYSTATE一4IFRANLHTTPSTATUS一200VATRETTEXTXMLHTTPRESPONSETEXT;IFRETTET一”FALSE“NAMEOAGFALBE;ALERT100NAMEFLAGFALSE;ALERT9;ELSENEFLA慨;53STRUTS标签技术STRUTS标签提供了大部分应用来满足创建MVC架构表现页面的所有功能脚在一个MVC应用中。请求并不是直接到达表现页面,而是首先经过控制器,仅当业务数据被获取,并且业务规则被应用后,控制器才处理表现页面。页面的职责就是输出结果和捕获用户输入,STRUTS标签的功能目的就在于此另外用STRUTS标签和资源文件还可以实现多语言国际化,这可以很好的解决留学平台面向国际用户建立多语言网站的需要留学信息平台主要用到了STRUTS的BEAN标签、LOGIC标签和HTML标签。并且用BEAN标签实现国际化。1BEAN删B啪融瑚ME;OI窖A麟”珥OPEFIY暑助缸矿FORMAT“YYYYMM4D”此代码输出ORSCLASS对象的MODIFYTIME字段,输出格式为YYYY一姗一DD样式的日期格式。此代码循环输出字典类里定义的课程类型代码对应的课程类型名本平台的同类型的值都存在字典类里,便于调用和扩展。4实现国际化。STRUTS允许将不同语言的文字写在多个资源文件中,每个资源对应一种语言,而在JSP页面上则通过STRUTS标签来显示文字,该标签可以根据浏览器的当前语言设置确定从对应的语种资源文件中取出字符串,显示在页面上实现国际化,首先需要准备好资源文件,需要支持的语言各对应一个其格式如下拱PROJE西INTERNATIONALHTTP/INFO3DOUCOM/口碑营销INDEXFITLEXX信息系统INDEXCOPYNGHTXXX有限公司版权所有其中以开头的行是注释,其它的行都是FEYYALUE的形式,定义了一个KEY对应当前语言下的文字保存资源文件时,需要在文件类型选项中选择纯文本类型,编码选择UTF8,注意资源文件的扩展名为PROPERTIES写好的PROPERTIES文件,通过JDK提供的工具NATIVE2ASCII转换,转换的资源的文件的命令行格式如下NADVC锄SDI咖CODINGUTF8AL利艮踟蝴掣。L笼M龆APP两强DL嗡剧珥OPE一嚣其中ENCODING参数指明编写的资源文件的编码格式,后面两个参数分别是需要转换的资源文件名和转换后保存的资源文件名。在STRUTSCONFIGML中配置资源文件的所在位置。JSP页面的编码方式需要设成UTF8,然后用BEANMESSAGE显示出来。数据库的字符集指定为UNICODE编码类型,以支持多种语言52留学信息平台的模块实现521在线问答模块的实现留学信息平台的在线问答模块即所实现的“留学E网”中的“E闻”,实现了用户在网上的在线问答和管理自己所提的问题和答案其操作流程如图51所示。图51在线问答模块活动图首先用户进入E问首页,首页上问题标题按分类显示,点击标题名称可以进入标题的内容页面以及对问题的回答。问题内容页面如图52所示。图52在线问答模堤问题内容页上图中的问题状态是。已解决”,因此列出了“最佳答案”提问者选出和其他答案。也可以设定闯题“已解决没有最佳答案”,如果问题还没有解决,在页面的最下方会出现回答问题框。只有登陆过的用户才可以回答问题。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广西中医药大学《土木工程施工组织设计》2023-2024学年第二学期期末试卷
- 六安职业技术学院《建筑构造及施工图识读》2023-2024学年第二学期期末试卷
- 长春大学旅游学院《计算方法及软件应用》2023-2024学年第二学期期末试卷
- 云南农业职业技术学院《岩浆岩岩石学》2023-2024学年第二学期期末试卷
- 新能源汽车市场突围策略
- 爱的教育第二卷核心解析
- 学生家长课件制作指南
- 2024年电调收音机项目投资申请报告代可行性研究报告
- (高清版)DG∕TJ 08-2111-2012 滩涂促淤圈围造地工程设计规范
- 别墅前期装修设计
- 2025届陕西省安康市高三下学期适应性模拟考试历史试题(原卷版+解析版)
- 备战2025年高考数学(新高考专用)抢分秘籍导数及其应用(九大题型)(学生版+解析)
- 村干部测试试题及答案
- 康复医学教学课件 - 基础医学 - 医药卫生 - 专业资料
- 宁波市余姚市交通运输局招聘工作人员笔试真题2024
- 《现代西方女性主义》课件
- 2025年广东省广州市天河区中考一模物理试题(含答案)
- 2025年四川省成都市青羊区中考二诊化学试题(原卷版+解析版)
- 急性心肌梗死诊断和治疗
- 【MOOC】大学英语听说译-河南理工大学 中国大学慕课MOOC答案
- 幼儿园班级幼儿图书目录清单(大中小班)
评论
0/150
提交评论