基于spring mvc和mybatis的轻量级mvc框架研究Word文档下载推荐.docx

上传人:聆听****声音 文档编号:949109 上传时间:2023-04-29 格式:DOCX 页数:9 大小:186.35KB
下载 相关 举报
基于spring mvc和mybatis的轻量级mvc框架研究Word文档下载推荐.docx_第1页
第1页 / 共9页
基于spring mvc和mybatis的轻量级mvc框架研究Word文档下载推荐.docx_第2页
第2页 / 共9页
基于spring mvc和mybatis的轻量级mvc框架研究Word文档下载推荐.docx_第3页
第3页 / 共9页
基于spring mvc和mybatis的轻量级mvc框架研究Word文档下载推荐.docx_第4页
第4页 / 共9页
基于spring mvc和mybatis的轻量级mvc框架研究Word文档下载推荐.docx_第5页
第5页 / 共9页
基于spring mvc和mybatis的轻量级mvc框架研究Word文档下载推荐.docx_第6页
第6页 / 共9页
基于spring mvc和mybatis的轻量级mvc框架研究Word文档下载推荐.docx_第7页
第7页 / 共9页
基于spring mvc和mybatis的轻量级mvc框架研究Word文档下载推荐.docx_第8页
第8页 / 共9页
基于spring mvc和mybatis的轻量级mvc框架研究Word文档下载推荐.docx_第9页
第9页 / 共9页
亲,该文档总共9页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于spring mvc和mybatis的轻量级mvc框架研究Word文档下载推荐.docx

《基于spring mvc和mybatis的轻量级mvc框架研究Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于spring mvc和mybatis的轻量级mvc框架研究Word文档下载推荐.docx(9页珍藏版)》请在冰点文库上搜索。

基于spring mvc和mybatis的轻量级mvc框架研究Word文档下载推荐.docx

或有开发效率的优势,或有运营效率的优势,或在安全保障占据优势。

我们可以结合两个或两个以上的优势来创建一个相对有效、轻量级框架。

Spring MVC与控制器,模型对象,调度程序和程序处理对象彼此分离,使其更容易定制[2]。

此外,Mybatis数据库的持久层框架,封装Java数据库连接(JDBC)[3]以及操纵数据库流程简化,与Hibernate相比,其自由度和数据库的访问效率也已得到提高。

将SpringMVC和Mybatis这两种技术有机地结合,构建一个轻量级的MVC开发框架,不仅可以有效地提高系统开发的效率,简化发展的复杂性,也改善了系统的安全性,稳定性和鲁棒性。

本文分以下部分:

第一部分:

综述及比较Struts2和SpringMVC,第二部分:

介绍

Hibernate和Mybatis,第三部分:

基于SpringMVC和Mybatis系统执行方案,第四部分描述了不同框架间的比较,第五部分:

结论。

8

2.相关工作

A.MVC框架

因为MVC能理想地分离业务逻辑和观点,所以它已成为程序设计的发展趋势。

人们不断深研MVC,MVC框架持续发展。

目前,比较成熟和稳定的Struts MVC框架主要包括Struts、Struts2、Webwork、SpringMVC等。

以下介绍Struts2和SpringMVC。

(1)Struts2

Struts2是一个在Struts1和Webwork 合并的基础上形成的新的网络层应用程序框架

[4]。

Struts2以WebWork 为核心,主要是使用Java服务器页面(JSP)和Servlet技术,将

Servlet,JSP自定义标记和信息资源整合成一个统一的框架。

开发人员只需要开发相应的Action类,ActionFormBean和JSP组件,开发Struts框架应用项目。

(2)SpringMVC

Spring是一个轻量级容器框架,有控制反转(IoC)和面向方面编程(AOP)[5]的性能以及七个定义良好的模块。

七个模块中的Spring MVC,是一个全功能的轻量级程序可以实现MVC对Web应用构建。

Spring MVC完美实现MVC的核心概念和特点,通过简单配置就能动态配置组件。

Spring MVC是这样运作的:

当客户端发送一个HTTP请求时,核心控制器(DispatcherServlet)接收请求,根据URL请求调度搜索HandleMapping并找到到适当的控制器。

控制器调用适当的业务逻辑来处理请求,当处理过程完成后,返回视图名称和ModelAndView对象DispatcherServlet,最后由ViewResolver返回

ModelAndView并呈现相应的视图。

图1显示了SpringMVC的请求处理管道。

图1.SpringMVC的请求处理管道

(3)Struts2和SpringMVC的比较

a)运行效率:

Struts2的文件配置数量大于SpringMVC;

不过SpringMVC在使用过程中更简洁且开发效率比Struts2高。

b)运行效率:

Struts2的设计是基于类的请求,为类级拦截器,而SpringMVC的设计基于方法,为方法级拦截器;

Struts2导入所有的类行为属性,SpringMVC只导入动作电流的请求数据。

因此,SpringMVC运营效率将高于Struts2。

选择强调所有开始和所属线路。

c)SpringMVC实现了业务逻辑和观点的完全分离。

业务逻辑处理后,它会返回一个字符串,与视图层的显示技术没有任何关联的标志,然后通过显示技术显示相应

ViewResolver配置的字符串数据。

B.HibernateandMybatis

Mybatis和Hibernate均为数据库持久层框架,有不同程度的JDBC的封装、与直接使用JDBC访问数据库相比,前两者开发效率大幅提高。

1)Hibernate

Hibernate是一个以JDBC封装的对象关系映射框架[6][7]。

在开发业务逻辑时,程序员可以采用面向对象的编程,而不采用面向数据库编程,这样更明确的分工,能提高项目开发的效率。

然而,学习Hibernate并不容易,而要精通绝非易事。

它需要更丰富的经验和强大的功能为用户设计O/R映射,并达到性能和对象模型的平衡。

2)Mybatis

Mybatis是一个很好的半自动数据库持久层ORM框架,支持常见的SQL查询,存储过程和先进的映射以及其他操作[8]。

Mybatis使用简单的XML或原始注释进行配置和映射,映射接口和JavaPOJO,记录在数据库中。

Mybatis的流程图如图2所示:

图2.Mybatis的工作流

3.基于SpringMVC和Mybatis实现的MVC框架

基于Spring MVC和Mybatis实现的MVC框架,使用Spring MVC框架来说明了

MVC模式,Mybatis作为数据库持久性框架,Excel、JSP、PDF、jQuery与JSTL结合形成视图技术,程序运行时Logback处理大量的日志。

根据MVC层的思想,这一框架的实现中,控制器层包括核心控制器和业务控制器,视图层主要是通过JSP和Excel等来实现,模型层包括数据访问对象(DAO)层、服务层、

Bean层,其中数据访问对象(DAO)层使用Mybatis来访问数据库。

图3显示了框架结构。

A、结构

图3.结构框架

SpringMVC需要下面的配置[9]:

(1)在配置描述文件中配置核心控制器;

(2)在Spring

MVC配置文件中配置ViewResolver;

(3)由于注解的使用,需要启动组件扫描和激活SpringMVC配置文件中的注释扫描函数;

(4)在业务控制器进行HandleMapping配置。

前两种类型的文件配置前需要Mybatis访问数据库。

一个是主要的配置文件,配置数据库连接信息,加载实体的映射配置文件,以及定义实体的别名;

另一个是实体映射配置文件,定义这个文件的名称空间参数类型结果类型CRUD操作,以及为每个操作指定一个不同的识别号。

B、MyBatis的工作流程

完成上述两种类型配置的文件后,可以用它们对数据库进行CRUD操作。

以“插入用户记录”为例,工作流程如下:

a)MybatisConnectionFactory.java:

建立SqlSessionFactory实例

Readerreader=Resources.getResourceAsReader("

mybatis-config.xml"

);

sqlSessionFactory=new

SqlSessionFactoryBuilder().build(reader);

b)BaseDAO.java:

methodin这个类定义的基本操作。

一个插入操作定义如下:

publicvoidinsert(Stringoperation,To){SqlSessionsession=sqlSessionFactory.openSession();

try{session.insert(operation,o);

mit();

}finally{session.close();

}

c)UserDAO.java:

继承BaseDAO

@Repository

PublicclassUserDAOextendsBaseDAO<

User>

{

Methodsneededtobewrittenoradded.

d)UserServiceImpl.java:

CallMethodinUserDAO

在UserServiceImpl中插入一个实现类用户记录到数据库中。

publicvoidinsertuser(Usero){userDAO.insert("

User.insert"

o);

4.COMAPRSIONS框架的性能

一个框架的性能如何可以从开发效率,操作效率、系统安全性、可维护性等判断。

框架的一部分性能分析在本篇文章中已做阐述,基于Spring MVC、经典框架SSH[10]以及Hibernate和Mybatis的MVC框架运营效率将得到进一步的测试和分析。

表1.在相同的环境和测试完成相同的任务

使用不同的框架发出60次相同的请求执行来衡量每个请求过滤的处理时间。

Hibernate和Mybatis访问数据库的执行时间记录在DAO层。

测试结果如表2所示:

图4.测试结果

表2.平均运行时间的要求

据上图图表显示,明显地,基于SpringMVC和Mybatis的MVC框架的操作效率要远远高于SSH,达到近58.76%。

Mybatis操作效率高于Hibernate14.06%。

研究证明,基于SpringMVC和Mybatis的框架是一个相对轻量级的MVC框架。

5.结论

本文实现了基于SpringMVC和Mybatis轻量级MVC框架的设计。

通过使用Spring注释,配置文件的数量和复杂性降低。

SpringMVC方法可拦截请求,只有导入请求数据的方法,才有助于提高操作效率。

此外,SpringMVC能完全分离业务逻辑和视图层。

Mybatis作为持久层框架提高了访问数据库的发展速度和效率,为改善系统安全性、性能和可维护性带来更多的空间。

6.致谢

这项工作是支持的国家基础研究程序(2006039),技术开发和合作(20120465)。

参考文献

[1]L.GuangChun,W.Lu,andX.Hanhong,“AnovelwebapplicationframedevelopedbyMVC,”ACMSIGSOFTSoftwareEngineeringNotes,vol.28,no.2,p.7,2003.

[2]J.LIUandJ.DAI,“ResearchoflightweightWebapplicationbasedonSpringMVCandiBATISframeworks[J],”JournalofComputerApplications,vol.4,p.26,2006.

[3]M.Fisher,J.Ellis,andJ.Bruce,JDBCAPItutorialandreference.Addison-WesleyProfessional,2003.

[4]D.Brown,C.M.Davis,andS.Stanlick,Struts2inaction.DreamtechPress,2008.

[5]R.Johnson,J.Hoeller,A.Arendsen,C.Sampaleanu,R.Harrop,T.Risberg,D.Davison,D.Kopylenko,

M.Pollack,T.Templier,andothers,“Thespringframework-referencedocumentation,”Interface21.(accessed30.04.07),2008.

[6]B.LIUandZ.WANG,“ApplicationofOfficeAutomationBasedonSSHFramework[J],”ComputerTechnologyandDevelopment,vol.1,p.39,2010.

[7]R.Johnson,“J2EEdevelopmentframeworks,”Computer,vol.38,no.1,pp.107–110,2005.

[8]C.Ho,“UsingMyBatisinSpring,”inProSpring3,Springer,2012,pp.397–435.

[9]J.Jamae,“SimplifyYourWebAppDevelopmentUsingtheSpringMVCFramework.”2004.

[10]G.-J.Guo,D.Xie,andL.-P.Chen,“DesignandimplementationofteachingsupportsystembasedonStruts-Spring-Hibernateintegrationarchitecture[J],”ComputerEngineeringandDesign,vol.13,p.25,2009.

ResearchonLightweightMVCFrameworkBasedonSpringMVCandMybatis

1

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2