文档章节

有关Spring3.x 整合myBatis3.1的轻量级框架简要说明

后海
 后海
发布于 2013/02/01 14:20
字数 1060
阅读 491
收藏 7

主题:有关Spring3.x 整合myBatis3.1的轻量级框架


对于现在主流的j2ee企业级开发而言,sshstruts+hibernate+spring)依然是一个事实的标准。

struts充当的mvc调度控制;hibernateorm持久化映射;springiocaop的容器环境近乎于完美的框架组合。


但是呢,在实际的开发工作中,由于程序猿对于技术、以及更加快速的解决方案的追求,我们会越来越发现ssh框架所存在的诸多问题和困扰。


Ssh框架存在的问题:

1.随着spring mvc的快捷使用,我们会发现spring mvc的作用和struts的整个功能,对基于mvc调度而已,存在严重的替代作用;


2.Hibernate虽然在orm方面给开发人员带来了很大的方面,程序猿可以基本上只需要关注程序的业务逻辑处理。但是呢,业务的复杂性和随意性永远不是那么简单的事,经常会遇到hibernate的配置方案无法满足业务逻辑,这时候灵活的SQL操作就显得很重要;


3.你会发现,在使用ssh的时候,你越来越无法忍受框架的臃肿。需要配置很多文件,需要考虑多个框架的jar兼容问题,多个框架运行流转的麻烦等等;


基于对以上存在的诸多问题的考虑,我们急需一套更加轻量级、高效的框架。考虑到spring的高度解耦、灵活的设计。你会发现,spring mvc对于请求调度的处理;spring ioc对于容器的管理,非常的高效简洁。


然后,就剩下一个orm产品。考虑到当前orm框架中,支持基于原生SQL操作,同时又高效、简洁,那就是MyBatis了。


这时候,你会发现框架其实也可以这般的简洁、灵活。尤其是基于REST风格的Spring3 MVC资源映射编程模型,编写的Code真的很优雅。那是相当的惊喜,编程之美。



以上呢,主要说了当前主流的ssh框架存在的一些问题,以及因此我们可以选择的更加灵活、高效的新型框架Spring3.x集合Mybatis3.x



下边呢,着重讲一下基于Spring3.x集合Mybatis3.x这种更加轻量级的框架的基本构成和相关配置文件。


Spring mvc的运行原理模型图例:



1.Web端发送了一个http请求,通过在web.xml中配置的Spring的核心Servlet控制器DispatcherServlet进行统一拦截。


2.Spring的核心DispatcherServlet,根据handlerMapping XML处理文件的配置,返回给spring核心处理器,并调度到handler匹配的请求的具体处理Controller


3.Spring的用户Servlet处理器,根据请求的参数,进行具体的业务逻辑处理,然后返回相应的ModelAndView,给spring核心处理器。


4.Spring核心处理器Servlet根据用户Servlet返回的逻辑视图,返回相应的展示视图,相应用户请求。



Spring mvc基本上和主流的mvc框架的处理逻辑是一致的。下面主要讲一下spring的两个重要的配置文件。


applicationContext.xml(我个人认为,这就是单纯的spring的配置文件)

1.dataSource数据源的配置;

2.transactionManager事务管理;

3.sqlSessionFactory数据session工厂;


4.<tx:annotation-driven transaction-manager="transactionManager" />基于spring3的全注解事务管理驱动配置。

5.<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">spring集成mybatis的处mapper整包路径扫描。



context-dispatcher.xml(我个人认为,这其实就是类似于strut的配置文件,作用于spring mvc

1.<mvc:annotation-driven />spring核心处理器的Handler映射和适配器服务注册

2.<context:component-scan base-package="com.matol.*" /> 基于全注解包路径扫描。

3.Spring的试图资源viewResolver注册



spring基本上也就是这些了,至于ssh中的ioc三层逐层依赖注入,和以前是一样的,唯一不同的是,这些逐层的依赖注入,可以采用全注解的方式,进行配置。


好吧,先写到这里,懒得继续写了,凑合着看吧。

© 著作权归作者所有

共有 人打赏支持
后海
粉丝 28
博文 41
码字总数 25623
作品 2
闵行
后端工程师
私信 提问
springMVC spring3.1+ mybatis3.1+

求一份整合spring3.1 springMVC 和mybatis 的详细说明文档或者代码。自己整合几天了 , controller 没问题 能转发请求就是 整合mybatis 在controller 加上@Inject private UserService userS...

foeget
2013/03/31
1K
9
Porteus Kiosk 4.5.0 发布,轻量级的 Linux 操作系统

Porteus Kiosk 4.5.0 已发布,Porteus Kiosk 是轻量级的 Linux 操作系统,它基于 Gentoo Linux 。 该版本的主要软件升级包括:Linux kernel 4.12.10, Mozilla Firefox 52.3.0 ESR 和 Google...

局长
2017/09/05
789
4
spring3.x + mybatis3.x 整合

新手,下午整了2小时,参考下面的两个博文整合了一次Spring3.x 和 mybatis 3.x 由于一直用Spring2.5,第一次使用Spring3.x 发现这么多jar包,没有全部导入,后来每次运行程序都报异常,根据异...

vvx1024
2014/03/18
0
2
Porteus Kiosk 4.4.0,轻量级的 Linux 操作系统

Porteus Kiosk 4.4.0 发布了,Porteus Kiosk 是轻量级的Linux操作系统,它基于 Gentoo Linux 。 该版本的主要软件升级包括:Linux kernel 4.9.30, Mozilla Firefox 52.1.2 ESR 和 Google Chr...

局长
2017/06/02
1K
3
Mybatis3.1日志配置

因为之前用的旧的版本,Mybatis3.1的改动比较大包名和部分类改了名字,请问要控制台打印SQL语句,怎么配置logger4j

方华
2012/09/27
2.5K
3

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周一乱弹 —— 白掌柜说了卖货不卖身

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @爱漫爱 :这是一场修行分享羽肿的单曲《Moony》 手机党少年们想听歌,请使劲儿戳(这里) @clouddyy :开不开心? 开心呀, 我又不爱睡懒觉…...

小小编辑
今天
8
0
大数据教程(11.7)hadoop2.9.1平台上仓库工具hive1.2.2搭建

上一篇文章介绍了hive2.3.4的搭建,然而这个版本已经不能稳定的支持mapreduce程序。本篇博主将分享hive1.2.2工具搭建全过程。先说明:本节就直接在上一节的hadoop环境中搭建了! 一、下载apa...

em_aaron
今天
3
0
开始看《JSP&Servlet学习笔记》

1:WEB应用简介。其中1.2.1对Web容器的工作流程写得不错 2:编写Servlet。搞清楚了Java的Web目录结构,以及Web.xml的一些配置作用。特别是讲了@WebServlet标签 3:请求与响应。更细致的讲了从...

max佩恩
今天
4
0
mysql分区功能详细介绍,以及实例

一,什么是数据库分区 前段时间写过一篇关于mysql分表的的文章,下面来说一下什么是数据库分区,以mysql为例。mysql数据库中的数据是以文件的形势存在磁盘上的,默认放在/mysql/data下面(可...

吴伟祥
今天
3
0
SQL语句查询

1.1 排序 通过order by语句,可以将查询出的结果进行排序。放置在select语句的最后。 格式: SELECT * FROM 表名 ORDER BY 排序字段ASC|DESC; ASC 升序 (默认) DESC 降序 1.查询所有商品信息,...

stars永恒
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部