请问各位大神,java如何实现同时支持多种数据库啊?

请问各位大神,java如何实现同时支持多种数据库啊?,第1张

Java连数据库不管用不用框架底层都是JDBC,而JDBC对每种类型数据库需要重新配置驱动,多个数据库同时用就没法单独使用连接池了,每个数据库都要打开自己的连接池的。你可以考虑自己写一个适配器层接口和实现,实现里面写连接多种数据库的逻辑,在里面调用原生JDBC代码或Hibernate, MyBatis那些框架都可以,这样上面那些层都不用改变了。

就像下面这个(示例,只写了查,用Hibernate,其他类似):

public interface MultiTypeDBSupport {

public List getData()

// ...

}

public class MultiTypeDBSupportImpl implements MultiTypeDBSupport {

public SessionFactory getSessionFactory(Stirng configFile){

SessionFactory sessionFactory = Configuration().config(configFile).buildSessionFactory()

}

public List getData(){

SessionFactory sessionFactoryMySQL = getSessionFactory("hibernateMySQL.cfg.xml")

Session sessionMySQL = sessionFactoryMySQL.openSession()

List users1 = sessionMySQL.createQuery("from User")

SessionFactory sessionFactoryOracle = getSessionFactory("hibernateOracle.cfg.xml")

Session sessionOracle = sessionFactoryOracle.openSession()

List users2 = sessionOracle.createQuery("from User")

users1.addAll(users2)

return users1

}

// .......

}

这个你只要配置3个SessionFactory、datasource分别使用3个用户,你可以使用一个jdbc.properties但是里面不要写用户,用户信息在datasource中直接写,然后你需要使用那个用户连接数据库就是用对应的SessionFactory即可!

02--

这是java环境,里有插件其全,javase,javaee,javame都可以,还有你所说的java项目框架直接

020202

用他自己集成环境就能生成

2.数据库你要是为了省事直接下一个mysql就行了,50多兆,不比

微软的slqserver系列的差

SSH框架中的持久层框架Hibernate可以根据你自己建的pojo及pojo的xml映射文件,自动创建数据库表,约束,引用,关联等等.

3.你上面写的那么多数据库

其他一点影响都没有,数据库任意建的,你只要在构建环境时,加载不同的数据库驱动就行了

02--即你上面那些基于orcle数据库的,你只要改个驱动程序,里面程序代码不用动,直接可以换数据库使用

另外,劝你一句,不要迷信视频,视频有好有坏,免费的视频看看

了解一下就行了,因为,有很多视频讲的真的好垃圾.最好买本讲原理的书,看原理,不要买那种整篇都是代码的书


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6721219.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-27
下一篇 2023-03-27

发表评论

登录后才能评论

评论列表(0条)

保存