求方案:如果数据库底层驱动不是任何jdbc体系,在spring中应该怎样
首先感谢大家的阅读 谢谢捧场^-^
场景:
1. 公司使用的底层数据存储不是jdbc方式,是开发了一个底层的平台,java通过jni调用Connect从而进行数据的保存、修改、删除和查询。
2.web中使用spring作为ApplicationContext,通过spring容器来管理bean
针对这个Connection他不是jdbc的体系,为了将来的扩展和开发时的方便,想象spring中的jdbctemplate一样实现一个集成了事务以及connection管理于一体的架构出来,目前不知道该从何入手?^-^希望各位多多帮忙,一起讨论下这个需要怎样来设计比较合适。
我目前的大概想法是:
1.Connection如果将来改变可以不用修改底层框架(象hibernate对待不同数据库时可以通过方言来支持不同的底层特性)
2.Connection可以配置池(象c3p0一样) 池打算参考c3p0来做一个实现
3.事务的支持(想象spring一样可以做事务切面) 这部分就晕了不知道怎么入手打算在第一个版本中不实现(不知道1和2条设计时该怎样预留逻辑或者接口方便以后集成事务的处理)
4.Connection的XXXTemplate(类似spring的jdbcTemplate使用一样的方便)这个主要是希望可以方便开发人员从繁琐的底层调用中解脱出来
。。。。
以上就是我的想法了,对于spring从来没有研究过底层的实现现在感觉比较棘手了,设计时可能会走很多弯路。
真诚希望得到大家的帮助 ^-^ 感谢大家了