牛刀小试---浅谈Spring如何整合WEB应用程序,Ibatis(2)!
来源:互联网 发布:淘宝无线端首页装修psd 编辑:程序博客网 时间:2024/06/05 07:08
从上面的文章我们知道,Spring的核心之一就是利用一个工厂类通过XML文件创建一个个的Java对象,但是这些直接可以通过class属性而得到的对象必须符合JavaBean对象的原则,即必须有一个无参的构造函数,要有相应的setter和getter方法。我们又知道我们使用Ibatis的核心就是调用Ibatis的SqlMapClient类来实现对数据库的操作。既然有了这样的认识,那么我们
就可以思考一下,既然Spring可以把整合Ibatis ,那也就是说它可以通过XML文件来创建出SqlMapClient对象,并装配给我们的DAO对象。查看Ibatis提供的API中我们发现SqlMapClient对象并不符合JavaBean的原则,那么我们怎么通过Spring来创建这个对象呢?
在Spring的API中我们可以很轻易找到一个org.springframework.orm.ibatis包,在这个包里Spring提供了SqlMapClientFactoryBean和SqlMapClientTemplate这两个类,通过这两个类Spring便可以创建出我们想要的SqlMapClient对象(Spring还提供了SqlMapFactoryBean,SqlMapTemplate这两个类,这是为了支持Ibatis的老版本而提供的类,在Ibatis2.0的情况下我们暂不需要考虑它们)SqlMapClientFactoryBean是一个工厂类,可以通过对它的属性配置,我们可以得到SqlMapClient对象(关于FactoryBean是如何创建相应的Bean对象的,可以参看Spring的源代码,或者和张孝翔老师联系)。由于我们的Spring自己可以创建出一个数据源对象,所以在我们的sql-map-config.xml中就可以不用在配置数据源了,我们只需要把Spring构建出来的数据源对象作为FactoryBean的一个属性装配给FactoryBean即可。我们知道SqlMapClient对象最终是要通过一个sql-map-config.xml文件来得到相关信息的,那么我们怎么把这个文件传给Spring中构建的SqlMapClient呢?查看SqlMapClientFactoryBean
的API我们知道它有一个setConfigLocation方法,它接受一个Resource对象参数,通过这个方法我们就可以得到我们的sql-map-client对象了。难道还要创建一个Resource对象吗?在Spring中提供了这样一个机制,当我们的方法接受一个Resource对象类型的,而我们传进来的即使是一个String那么
Spring也会竭尽所能的把这个String转化成Resource对象。这样我们就可以直接在applicationContext.xml文件中直接使用value属性来配置configLocation这个属性即可。通过以上的说明我们就可以把Spring和Ibatis完美的整合到一起了。但是在工作中我们更多是应用SqlMapClientTemplate,
这个对象包装了SqlMapClient对象,并加入事务机制,关于这个问题我会在以后的文章中详细的介绍,总之通过以上的方法我们完全可以实现Spring和Ibatis,以及WEB的整合了!!
- 牛刀小试---浅谈Spring如何整合WEB应用程序,Ibatis(2)!
- 牛刀小试---浅谈Spring如何整合WEB应用程序,Ibatis!
- JAVA WEB中spring整合Ibatis总结
- JAVA WEB中spring整合Ibatis总结
- spring 3.0 + ibatis 2 整合
- 实战解析:如何整合iBatis和Spring
- mapxtreme java manger web 应用程序牛刀小试
- Spring如何整合WEB框架
- 【SSI开发总结.2】spring整合ibatis
- spring与ibatis整合
- Spring 与 ibatis 整合
- spring整合Hibernate+iBATIS
- Spring与Ibatis整合
- ibatis-Spring 整合
- Struts2+Ibatis+Spring整合
- spring和ibatis整合
- ibatis与spring整合
- spring整合ibatis事务管理
- Spry学习(一)----XML数据集及显示
- 在Tomcat上配置struts2环境时遇到 “Error filterstart” 问题的解决方法
- 不知道写什么了
- Asp.net 2.0 用C# 创建 PDF文件[引用] (示例代码下载)
- Spry学习(二)----XML数据集及主从表显示
- 牛刀小试---浅谈Spring如何整合WEB应用程序,Ibatis(2)!
- Win32 API函数
- Java 视频捕获(JMF)
- 重启机器/待机/睡眠等状态
- Linux kernel coding style (Linux内核编码风格)
- Excel文件
- C++实现插件构架 之 入门篇
- Java性能优化技巧集锦
- JavaScript 参考教程