不知道hibernate。wls可以配置多个connection factory(db instance),形成多个data source

解决方案 »

  1.   

    为每一个数据库写一个hibernateMapping.cfg.xml(例如:db1.cfg.xml,db2.cfg.xml)
    在代码种:
      

  2.   

    在代码中:
      Configuration cfg = new Configuration();
      cfg.configure("db1.cfg");
      SessionFactory sf = cfg.buildSessionFactory();
    这样就可以了。
      

  3.   

    更正一下,上边的代码第二行应该是:
       cfg.configure("db1.cfg.xml");你按照上边的方法为每一个数据库生成一个SessionFactory就可以了。
      

  4.   

    楼上的eyes2near老兄,您发的帖子我试了,按您说的我在程序中加入了代码,可是,出现了如下错误:net.sf.hibernate.HibernateException: ermhbm.cfg.xml not found
    at net.sf.hibernate.cfg.Configuration.getConfigurationInputStream(Configuration.java:820)
    at net.sf.hibernate.cfg.Configuration.configure(Configuration.java:844)
    at com.erm.weblogicstart.HibernateStartUp.main(HibernateStartUp.java:24)主要是指重新写的ermhbm.cfg.xml 文件找不到,原来的文件名是:hibernate.cfg.xml;
    我想是不是hibernate.cfg.xml是hibernate默认的文件,不能被替换呢?多谢您的指教,请在给予更多的高招。多谢!!!
      

  5.   

    呵呵,不会把,我可是屡试不爽。你把ermhbm.cfg.xml放在那里了?你要把它放在你的路径的根目录下,应该没问题的。你也可以自己去读一下hibernate的configuration#configurate部分的源代码,这样就什么都清楚了。
      

  6.   

    换cfg.configure("/db1.cfg.xml");试试
      

  7.   

    楼上的eyes2near老兄,我想问一下,你用的服务器是Weblogic 还是 Tomcat ,如果是 Tomcat那可遭了,我用的服务器 是Weblogic, 你有用 Weblogic 服务器的好办法吗?