毕业设计文献摘要文档格式.docx
- 文档编号:19831592
- 上传时间:2023-01-10
- 格式:DOCX
- 页数:8
- 大小:29.90KB
毕业设计文献摘要文档格式.docx
《毕业设计文献摘要文档格式.docx》由会员分享,可在线阅读,更多相关《毕业设计文献摘要文档格式.docx(8页珍藏版)》请在冰豆网上搜索。
基于Struts+Spring+Hibernate框架的应用研究[2]
大部分Web应用都可以按照职责分为至少四层。
它们是表现层、数据持久化层、业务处理层和域模型层。
每一层负责整个应用不同方面的职责,并且不应该和其它层有功能上的混合。
应用中每一层都应该和其它层隔离,只允许通过明确的接口在层与层之间进行通讯。
表现层(PresentationLayer)目前表现层可以采用的框架有Struts,WebWork,JSF等,由于Struts框架比较成熟,是功能强大的WebMVC框架,具有完善的Web显示标签、用户请求处理、异常处理及数据验证功能,是目前表现层的首选框架。
业务层(BusinessLayer)业务层将传统上放在UI和持久层的业务代码抽取在一起,从而尽可能地降低程序代码之间的耦合度。
目前比较成熟的业务层框架有Spring和PicoContainer,它们占用资源非常少,使用它们能帮助程序员管理对象间的依赖关系,所以被称为微容器。
这两个框架都支持目前流行的IoC(InversionofControl)和AOP(AspectOrientedProgramming)技术,从而有助于我们更好地降低程序之间的耦合度,降低系统维护的难度。
Spring目前使用比PicoContainer要广泛,因此对业务层的处理采用Spring。
数据持久层(PersistenceLayer)数据持久的作用是让数据持久保留下来以及把持久保存的数据读取出来。
对于数据库应用系统,数据持久层的功能是实现程序与数据库之间的数据存储及获取。
数据持久层通常采用比较成熟的ORM框架,目前成熟的ORM框架有Hibernate、iBatis和JDO。
Hibernate是一个优秀成熟的ORM框架,它为Java提供对象模型到关系模型的持久化和查询服务。
域模型层(DomainModelLayer)域模型层由实际需求中的业务对象组成(更为简单的就是Po即persistentobject,持久化对象)。
域模型层使得Java程序员能以自然的面向对象的方式工作,而不需要额外的编码。
域模型层主要的
作用是提供一个在不同层之间移动的对象集合。
Spring;
Web应用;
Framework
基于Struts和Hibernate的Web系统设计与应用[3]
介绍了当前流行的开源框架Struts和Hibernate技术,提出了基于Struts和Hibernate的多层Web体系结构的围垦工程建设管理信息系统的构建方案。
该方案将应用逻辑、处理过程和显示逻辑分成不同的组成部分,用Hibernate实现模型部分(数据持久层),Struts实现视图和控制器部分。
该方案实现了层次间的松耦合,提高了代码重用性,增强了系统的灵活性、复用性和可维护性,提高了软件质量。
根据需求分析,围垦工程建设管理信息系统主要设置项目申报管理、用户信息管理、项目查询管理、项目进度管理、项目验收管理、项目成果管理、报表统计管理等功能模块。
由于篇幅所限本文只给出项目申报管理功能模块的分析和设计。
项目申报模块主要用于申报者注册后进行项目的申报,涉及的逻辑功能有:
①增加处理,主要完成一个新项目的申请;
②修改处理,如果申请的项目还没提交审批,那么用户可以对申请的项目信息进行修改;
③提交处理,在提交审批后,将项目申请结果通过Hibernate进行持久化存储。
具体的申报过程为:
用户通过视图界面项目申请表单页面向服务器发出申报请求,请求信息包括项目的编号和用户的注册名;
服务器上的控制器Servlet获得此请求后,将信息转发给业务逻辑层,调用相应的业务对象类进行业务逻辑处理,其主要作用就是新增一个新的申请项目,同时在未提交审批前可对其申请的信息进行修改;
在提交审批后,将项目申请结果通过Hibernate进行持久化存储,并将提交审批结果返回到浏览器响应用户请求。
开源框架;
MVC;
Hibernate
基于SSH的Web系统的研究与应用[4]
基于流行的开源框架技术:
Struts、Spring和Hibernate,通过集成这三种框架技术来对传统的J2EEWeb开发模型加以改进,以形成一种轻量型的J2EE架构,集成的SSH框架的系统。
系统从整体上可以分为:
表现层、业务逻辑层、DAO层、数据持久层。
其中使用Struts作为系统的整体基础架构,负责实现MVC分离功能;
Hibernate负责持久化操作,屏蔽对数据库操作细节;
业务逻辑层采用Spring框架,Spring提供Spring容器为用户设置对象间的依赖关系,支持Transaction和HibernateSession管理,并且通过面向方面编程(AspectOrientedProgramming,AOP)提供了统一的方式来处理横向的需求。
表现层:
用于与用户交互,处理用户的请求,显示处理后的结果等,主要采用Struts技术。
Struts框架提供一个核心控制器ActionServlet拦截用户所有的请求,业务逻辑控制器Action负责调用业务逻辑方法。
同时Struts还将用户的请求参数封装成值对象的组件,使用ActionForm封装用户的请求参数。
业务逻辑层:
该层处理业务逻辑,向下正面封装和调用DAO组件。
这一层用Spring作为核心,也是整个系统框架的核心。
它负责系统中JavaBean的管理、事务管理和各组件的有机黏合。
封装复杂的业务处理,按照控制器层的调用请求执行业务逻辑并返回结果。
DAO层:
该层封装了运用Hibernate框架,对POJO进行持久化的操作。
主要向上提供数据访问、持久化等功能,向下与数据库系统交互。
DAO组件借助Spring提供的DAO支持来实现,Spring提供了大量的相关的DAO工具类,简化DAO的开发步骤和实现过程,能用一致的方式访问数据库,而不管底层是采用JDBC、Hibernate还是JDO。
数据持久层:
采用Hibernate框架提供的业务对象和关系数据库映射功能实现,在JDBC层之上提供更好的封装,完成持久化类和数据库表之间的映射,从而以面向对象的方式操作数据库。
框架;
SSH;
Web系统
Struts2框架的权限控制研究[5]
Struts2也是一个基于MVC模式的框架。
框架中作为控制器的是FilterDispatcher,它是一个Servlet过滤器。
当请求来到的时候,首先要经过FilterDispatcher过滤,由它来决定由哪个Action来处理请求。
而Action在Struts2中是作为模型存在的。
视图方面除了JSP页面外,还可以使用Velocity、FreeMarker、Tiles等多种视图资源。
多数Web应用都要求用户登陆,才可以查看系统中某些资源;
否则,系统会直接转人登陆页面。
对于这种需求,可以在每个Action执行实际处理逻辑之前,先执行权限检查逻辑。
但这种做法不利于代码复用,因为大部分Action里的权限检查代码都大同小异。
这时可以考虑利用公共的Action实现用户合法性的校验。
Struts应用框架,已经广泛地运用于企业平台中,而Struts2应用框架在提高系统开发效率,增加代码复用效率,增强系统可维护性,缩短系统开发时间这些方面更为优秀。
本文所提到的权限控制方法中,通过Action实现权限控制易于实现,但不利于系统维护更新,基于容器的权限控制方法简单,但不适合用户变化频繁的应用系统,而使用拦截器实现权限控制既简单又具有灵活性,用户应该根据实际孺求选择合适的权限控制方法。
Struts2;
权限控制;
拦截器;
容器
Struts2框架技术的研究与分析[6]
Struts2使用了WebWork设计核心,而不是Struts1设计核心。
Struts2框架与WebWork框架相比,在很多方面仅仅是改变了其在WebWork下的名称。
从处理流程上看,Struts2(WebWork)与Struts1类似,它们的核心都由控
制器组成。
Struts2的控制器也由两部分组成:
核心控制器ServletDispatcher和业务逻辑控制器Action。
Struts2的处理流程如下:
浏览器发出请求。
核心控制器FilterDispatcher根据请求决定调用合适的Action。
拦截器链自动对请求应用通用功能,如workflow、validation、或文件上传等功能。
回调Action的execute方法,该方法获取用户的请求参数,并调用业务逻辑。
Action的execute方法根据执行结果返回result值,在struts.xml配置文件中,指定result值和视图资源之间的映射关系。
Struts2支持的视图资源除了JSP以外还有Velocity、FreeMarker等。
核心控制器是一个Filter,由框架提供。
当用户的请求到达时,它会过滤所有的用户请求,如果用户请求以Action结尾,该请求将被转入Struts2框架处理。
Struts2框架根据请求*.action的“*”部分决定调用哪个Action。
Action和其实现类之间的对应关系都定义在struts.xml文件中。
Struts2框架提供了一系列拦截器,这些拦截器负责将HttpServletRequest请求中的请求参数解析出来,传入到Action中并回调Action的execute方法来处理用户请求。
Interceptor(拦截器)将Action共用的行为独立出来,在Action执行前后运行。
这其实就是AOP(AspectOrientedProgramming,面向方面编程)。
将很多功能从用户的Action中独立出来,减少了Action的大量代码,独立出来的行为具有很好的重用性。
Struts2的许多功能都是由Interceptor实现,可以在配置文件中组装Action用到的Interceptor,它会按照指定的顺序,在Action执行前后运行。
这就将需求功能从不相关类中分离出来;
同时,能够使得很多类共享一个行为,一旦行为发生变化,不必修改很多类,只要修改这个行为就可以。
这种处理方式是典型的AOP处理方式。
业务逻辑控制器Action,由用户自定义。
与Struts1的Action不同,Struts2的Action完全与ServletAPI分离,因而该Action更容易测试。
Struts2中的Action不再像Struts1中的Action那样需要继承Action父类,它可以无需实现任何接口,一个POJO就可以充当Struts2的Action。
WebWork;
Struts1;
Struts2;
控制器;
视图层
基于J2EE架构的SSH框架研究及应用[7]
在计算机科学领域,随着Java技术的逐渐成熟和日趋完善,作为建立企业级应用的标准平台,J2EE架构也得到了长足的发展,它将面向对象的MVC设计模式与J2EE的多层体系结构结合起来形成一种快速高效的开发模式。
而在这种开发模式中,比较主流的框架有三个,即:
Struts、Spring、Hibernate。
Struts正是对MVC设计模式的实现,提供了国际化和灵活性等许多优点。
而Hibernate则实现JDBC的轻量级的对象封装,使程序员可以使用对象编程思想来操作数据库,不仅提供了从Java类到数据表的映射,也提供了数据查询和恢复机
制。
Spring是一个以依赖注入(DependencyInjection,DI)原则和面向方面编程相思(aspect-orientedprogramming,AOP)为基础的轻量级框架。
将这三个框架有机结合起来,不但可以提高系统的开发效率,而且在系统安全性、稳定性和健壮性上都有良好的改正。
架构也可以称作体系结构,PhilippeKruchten根据Perry和Wolfe的定义是“支持或封装其它东西的一种结构,特别是一个骨架性支持,用来作为构造他事物的基础”。
J2EE架构采用J2EE规范的分层结构思想,分为客户层、WEB表示层、业务逻辑层、持久层、数据库层。
Struts框架实现了WEB表示层,它把Servlet、JSP、自定义的标签和信息资源整合到一起,实现了显示逻辑与业务逻辑的分离。
Spring框架实现了业务逻辑层,该框架以基于IOC依赖注入的轻量级容器为核心,采用AOP的面向切面编程的思想,实现了编码的非侵入性。
而Hibernate框架则实现了持久层,具体负责实现领域模型对象与数据库表之间的ORM映射,减少了人工使用SQL和JDBC处理数据的时间。
当前,基于Struts、Hibernate和Spring多框架的整合方案及相关技术将会在一些系统项目中得到广泛应用。
一方面是,这三个框架就是开源的,有丰富的而其免费的技术文档资料和开发背景。
另一方面,它搭建的应用系统,视图、业务逻辑、控制、持久化,各层次分明,Struts、Spring、Hibernate分别担当不同的角色,职责清晰,极为有利于系统的运行、维护、扩充、升级、移植、复用等,进一步降低了软件开发周期,以及维护成本,提高了效率。
同时各模块之间交互过程中耦合性降低,内聚性加强,进一步提高了系统的健壮性。
轻量级;
Spring
基于轻量级J2EE框架的考试系统设计与实现[8]
传统的J2EE采用EJB(EnterpriseJavaBean企业级JavaBean)框架的,由于其部署麻烦,开发复杂,可移植性差,加上其致命的缺点Bean次性全部转载,响应速度慢—重量级架构致命的缺点,很多企业应用都转用轻量J2EE架构,其中SSH2(Struts2,Spring,Hibernate)的整合框架成为J2EE开发中的主流。
SSH2架构是基于MVC模式的,分为4层:
(1)Web层:
Web层主要是由JSP(JavaServerPage,Java服务器网页)完成,负责显示逻辑。
Struts2对视图层有很好的支持,提供了一系列的标签来简化视图的开发。
(2)控制层:
借助Struts2实现。
FilterDispatcher来拦截用户请求,用Intercetorchain对请求进行过滤,用Action类实现动作处理、调用业务对象处理业务、链接转向。
实现MVC中的Controller;
借助Struts标签和JSTL/EL
来完成数据回现及数据呈现,实现MVC中的View。
(3)业务层:
将业务逻辑独立出来成为一个单独的层,其目的是希望通过层来降低它与系统其他部分的耦合度。
通过依赖注入、AOP应用、面向接口编程,来降低业务组件之间的耦合度,增强系统扩展性。
在业务层对象中使用JPAAPI对实体Bean进行持久化操作,并使用Spring容器管理事务功能对业务层对象实施声明式事务管理。
(4)持久层:
持久层是管理数据持久化的一层,该层管理了有关数据持久化的事务,包括数据插入,删除,更新,查询等,屏蔽了底层的数据库SQL语言的调用,实现面向对象的理念,使业务逻辑层与数据库解耦。
JSP;
接口
基于JSP的远程考试平台的设计与实现[9]
在学校中,考试是检验教育成果的一种常用手段,传统考试要求老师做出试卷、印试卷、安排考场、监考、收集试卷、评改试卷、讲评试卷和分析试卷等等工作。
这是一个漫长而复杂的过程,而且耗费大量人力、物力。
通过互联网而兴起的网络考试在具有传统考试特点的同时,克服了传统考试的缺点,它可以利用网络的广阔空间,随时随地对学生进行考试,并大大简化了传统考试的过程。
基于网络进行在线考试,具有现有考试手段所无法比拟的优点,例如检索迅速、操作方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
本文是根据B/S模式,提出的一种基于JSP,Servlet和JavaBean技术的远程考试系统的实现方案。
考试系统采用B/S模式,所有的程序都运行在服务器端,客户端只要有浏览器即可完成对该系统的操作。
基于Java语言的JSP技术具有较好的平台无关性、
安全性和强大的数据库支持,适合开发网络考试系统。
JavaBean是一种Java类,通过封装属性和方法成为具有独立功能、可重复使用的并且可以与其他控件通讯的组件对象,其最大的特点是重复使用性,JavaBean更多的应用于非可视化领域,它在服务器应用方面表现出了越来越强的生命力,主要用来在JSP程序中封装事物逻辑、数据库操作等。
Servlet是运行在Web服务器端的Java程序,具有多线程、平台独立、运行效率高等特点。
采用JSP+JavaBean+Servlet结合的系统架构,可以借助于Srevlet和JSP的良好关系以及JavaBean的协助,将系统的整个逻辑结构放在几个JavaServlet中,而将动态页面的输出放在JSP中完成,负责响应客户请求,根据用户的权限,决定将哪个JSP页面发送给用户。
本文将软件工程思想引入网上考试系统的设计开发过程,较之传统的开发方法,整个系统结构化更强,逻辑性更加严密;
同时还配有完整、规范的软件文档,便于系统的维护与更新。
开发技术采用JavaServlet和JavaBean,使系统的显示逻辑和业务逻辑分离,保证了系统的安全性和平台无关性。
考试系统中的数据库设计达到了设计的预期目标,系统运行安全可靠。
该考试系统的设计,立足于实际课程教学和教学改革的需要,简化了考试过程,规范了考试管理,并通过自动完成组卷、判卷、排序、成绩分析、成绩排序等工作,大大减轻了网络教学系统中教师的工作量。
受到了教师和学生的一致好评。
在线考试系统;
JSP技术;
B/S模式
基于JSP的网络数据库连接技术[10]
Java语言具有平台无关性和强大的网络编程功能,因此Java已经成为网络数据库开发中最常用编程语言。
基于Java的网络数据库三层结构通常分为客户端/Web应用服务器/数据库服务器(Browser/WebServer/DatabaseServer,B/W/D)三层。
第一层为客户层,通常是使用Web浏览器实现的与用户交互的最终界面。
第二层为Web应用服务器层,也称为中间层。
主要负责安全控制、事务处理或应用逻辑。
通常使用Servlet引擎或应用服务器实现。
第三层为数据库服务器层,即数据层。
主要是数据库操作系统(DBMS)。
在三层结构中,客户机调用Java应用程序,向Web应用服务器层提出数据库操作请求。
Web应用服务器通过调用JDBC与相应的数据库进行连接,数据操作在数据库服务器中进行,将结果返回给Web应用服务器,并最终发送到客户端并以Web形式显示给用户。
在网络数据库三层结构中,应用服务器与数据库服务器分离,因此数据库具有很高的物理独立性和逻辑独立性,从而提高了数据库的性能和安全保障。
同时,用户可以使用简单的操作来访问数据库,而不必关心底层的调用细节。
JSP(JavaServerPages)技术是一个纯Java平台技术,是由Sun公司倡导,多家公司共同参与制定的一种动态网页技术标准。
JSP将Java作为其脚本语言,在传统的HTML文件中加入Java程序片段和JSP标签,因此JSP也继承了Java语言的各种优点。
同时JSP技术将页面设计与商务逻辑分离,区分了Web设计者和Web开发者的角色。
JSP技术以Servlet技术为基础。
在三层结构中,JSP工作在中间层。
当客户端通过浏览器第一次发送JSP请求时,JSP容器将JSP转译成Servlet代码,然后Servlet引擎加载Servlet执行,最后将结果以HTML的形式响应至客户端。
当客户再次发出同样的处理请求时,Web服务器就直接执行第一次产生的Servlet,无需重新编译。
三层结构;
网络数据库;
JDBC;
JDBC—ODBC桥
参考文献:
[1]王开雷,耿玉水.Hibernate在Struts中的研究与应用[J].山东轻工业学院学报,2007,20
(1):
27-29.
[2]廖福保,张文梅.基于Struts+Spring+Hibernate框架的应用研究[J].广东工商职业技术学院学报,2011,19
(1):
51-54.
[3]胡海青,周小丽,胡明华.基于Struts和Hibernate的Web系统设计与应用[J].浙江同济科技职业学院,2010,20(4):
28-30.
[4]安英林.基于SSH的Web系统的研究与应用[J].邢台职业技术学院学报,2010,10(27):
94-97.
[5]郝平.Struts2框架的权限控制研究[J].软件导刊,2009,10(3):
21-23.
[6]耿伟,刘振海,孙磊.基于Struts2框架技术的研究与分析[J].电脑知识与技术,2008,18(5):
1312-1313.
[7]伍飞,冉文江.基于J2EE架构的SSH框架研究及应用[J].江南大学,2010
(2):
83-84.
[8]李又良,袁智威.基于轻量级J2EE框架的考试系统设计与实现[J].湖南城市学院学报,2011,20
(1):
62-65.
[9]王桂娟.基于JSP的远程考试平台的设计与实现[J].江苏徐州市铜山县夹河中学,2008,18
(1):
8-9.
[10]周彩兰,孙琳,李素芬.基于JSP的网络数据库连接技术[J].武汉理工大学,2006,4(4):
210-212.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 文献 摘要