以注释映射为例:
Configuration cfg1 = new AnnotationConfiguration();
cfg1.configure("/hibernate-oracle.cfg.xml");
cfg1.addAnnotatedClass(SomeClass.class); // mapped classes
cfg1.addAnnotatedClass(SomeOtherClass.class);
SessionFactory sf1 = cfg1.buildSessionFactory();
Configuration cfg2 = new AnnotationConfiguration();
cfg2.configure("/hibernate-MysqL.cfg.xml");
cfg2.addAnnotatedClass(SomeClass.class); // Could be the same or different than above
cfg2.addAnnotatedClass(SomeOtherClass.class);
SessionFactory sf2 = cfg2.buildSessionFactory();
然后使用sf1和sf2获取每个数据库的会话。对于映射文件,只需使用cfg.addClass而不是addAnnotatedClass。在这种情况下,请将cfg.xml文件放入根软件包中。这些将具有Oracle或MysqL的方言和连接信息。