怎么样让ibatis原生支持C3P0
昨天,在javaeye上看到一个帖子,http://www.iteye.com/post/604066,说的是怎么样让ibatis支持c3p0,而不是通过spring的方法支持。晚上回到家后,把那个老大的代码下载下来。然后,我把ibatis的源码也复制下来(ibatis用的是2.1.5),然后自己建了一个工程,我发现源码需要依赖很多包,找啊找,没有办法,没有用的几个DAO给干掉了(HibernateDaoTemplate, TopLinkDaoTemplate),好像还有个OJB什么的,也给干掉了。然后,总算包依赖的问题解决了,然后运行发现有不少问题。然后,我就执行全文搜索DBCP,根据搜索出来的DBCP的相关代码,C3P0没有的也给加上了,总之到最后是ibatis是可以原生的支持c3p0了。另外,如果要增加c3p0的配置参数,可以自行修改com.ibatis.common.jdbc.C3P0Configuration类中的代码即可。下面附上我修改后的源代码工程(由于源码依赖的JAR包不少,所以就把整个工程给打包了)。同时上传的还有一个编译的可以支持c3p0的ibatis jar包(jdk1.5下编译打包的),还有一个使用ibatis支持c3p0的一个简单测试工程,也算是个例子吧。
1 楼 titanfoot 2008-09-03 没啥用阿! 2 楼 xuxiaolei 2008-09-03 确实,用spring可以直接支持c3p0,但是如果不打算使用spring的话,还是有用的哦 3 楼 renguistyle 2008-11-12 好像C3PO不如DBCP稳定。 4 楼 veenter 2008-11-12 我也想知道。 5 楼 BlackSwallow 2009-02-23 DHCP 由于某种原因断开后不会自动连接,要重新启动tomcat