『壹』 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文件就可以滿足需求