导航:首页 > 编程大全 > hibernate配置多个数据库

hibernate配置多个数据库

发布时间:2024-08-06 21:47:25

『壹』 hibernate有哪些配置文件

主要是两类,
1)一个总体用的hibernate.cfg.xml,比如设置数据库用户名、密码、常量、映射文件位置等等信息的地方,这个文件整个hibernate项目只用一个就可;
2)每个实体映射都有一个***.hbm.xml文件,即实体映射文件,里面写的是数据库和实体类的映射配置,包含关系映射或继承映射等等;比如Student.java实体类就用Student.hbm.xml这个映射文件;所以一个hibernate项目往往有多个配置文件。不过这些配置也可以以注解(Annotation)形式写在实体类里面。hibernate支持标准的JPA标准注解。

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

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;
}
// .......
}

『叁』 NHibernate 连接多数据库怎么配置

NHibernate本身不支持多数据库支持,需要写SessionFactory扩展,不过一些项目已经写了这个扩展,例如Burrow项目,使用多个hibernate.cfg.xml,创建多个SessionFactory。。这是必须的。

『肆』 NHibernate 连接多数据库怎么配置

sqlserver数据库连接放在配置文件中,只是针对外部程序访问sqlserver的场景,几种不同连接方式(odbc,ef,nhibernate,mybitas,等等),连接字符串也有所不同,你在网上搜一下,sqlserver连接字符串格式就知道了,配置文件的话,分2种,一种是建立项目时自带的config文件,这种文件的读写访问.net自己就有方法支持,文件格式和对应节点的说明也很详细;自己建立一个配置文件(可以是txt,xml等,格式可以自己控制,不过需要自己去编写相应的读写方法);
上面2种方式,各有优劣,第1种,使用系统自带的配置文件,操作方便,但是这个文件有个要注意的地方,就是它一般是在系统启动时去加载文件信息,在程序运行过程中,修改了配置文件的值,需要下次重启软件才会生效。
不过一般数据库连接字符串这种,在程序运行过程中,变化的几率小,直接用自带config文件就可以满足需求

阅读全文

与hibernate配置多个数据库相关的资料

热点内容
百信集团的网站叫什么名字 浏览:67
开发解压app理念是什么 浏览:128
linux源代码路径 浏览:854
美图2root后不能升级了 浏览:133
shell文件size 浏览:350
通过大数据查干部哪些内容 浏览:78
如何编程输出一个数的十位数 浏览:760
9月7日苹果发布会 浏览:150
u盘里文件打开都是乱码怎么办 浏览:402
文件管理里可以复制 浏览:60
怎么断数据源 浏览:371
linux文件夹递归赋权 浏览:103
阻止U盘写入特定后缀文件 浏览:8
车载gps端口检测工具 浏览:244
多重网络取消合并 浏览:876
哪个APP看电影删减的少 浏览:160
苹果6进水读不了卡什么原因 浏览:68
网盘文件怎么提取到笔记软件里 浏览:136
java解析简单json数据类型 浏览:750
008神器破解版使用教程 浏览:974

友情链接