如何指定除hibernate.properties之外的其他属性文件

时间:2011-12-13 08:57:21

标签: hibernate

我有一个产品的“hibernate.properties”,我还想要一个用于测试。

所以我在类路径中创建了一个“hibernate.test.properties”,但我不知道如何让hibernate使用它。它总是使用“hibernate.properties”。

我该怎么办?

1 个答案:

答案 0 :(得分:1)

拿这个HibernateUtil类。它加载没有标准名称的XML和属性文件。希望它有用。

public class HibernateUtil2 {
  private static final SessionFactory sessionFactory = buildSessionFactory();

  private static SessionFactory buildSessionFactory() {
    try {
        URL r1 = HibernateUtil2.class.getResource("/hibernate2.cfg.xml");
        Configuration c = new Configuration().configure(r1);

        try {
            InputStream is = HibernateUtil2.class.getResourceAsStream("/hibernate2.properties");
            Properties props = new Properties();
            props.load(is);
            c.addProperties(props);
        } catch (Exception e) {
            LOG.error("Error al leer las propiedades", e);
        }

        return c.buildSessionFactory();
    } catch (Throwable ex) {
        // Make sure you log the exception, as it might be swallowed
        LOG.error("Error al construir SessionFactory", ex);
        throw new ExceptionInInitializerError(ex);
    }
}

public static SessionFactory getSessionFactory() {
    return sessionFactory;
}

}