2013-02-17 158 views
0

我有配置类配置设置休眠4

public class HibernateConfiguration { 

    private HibernateConfiguration() {} 

    public Configuration configuration(Class clazz) { 
     Configuration c = new Configuration(); 
     c.setProperty(Environment.DRIVER, "org.postgresql.Driver"); 
     c.setProperty(Environment.URL, "jdbc:postgresql://localhost/brush_and_pixel"); 
     c.setProperty(Environment.USER, "postgres"); 
     c.setProperty(Environment.PASS, "solaris"); 
     c.setProperty(Environment.DIALECT, "org.hibernate.dialect.PostgreSQLDialect"); 
     c.setProperty(Environment.AUTOCOMMIT, "true"); //"true"); 
      c.setProperty(Environment.CURRENT_SESSION_CONTEXT_CLASS, "thread"); 
      c.addClass(clazz); 

     return c; 
    } 

    public static HibernateConfiguration getHibernateConfiguration() { 
     return new HibernateConfiguration(); 
    } 

} 

我访问它在测试像这样:

public void setUp() { 
    /**/ 
    Configuration c = HibernateConfiguration.getHibernateConfiguration() 
     .configuration(SettingsGroup.class).addClass(Setting.class); 

    SessionFactory sessionFactory = c.buildSessionFactory(); 

    settingsGroupDao = new SettingGroupDao(); 
    settingsGroupDao.setSessionFactory(sessionFactory); 
} 

什么是推荐的方式来获得sessionFactory因为buildSessionFactory()方法已被弃用?

回答

0

hibernate docs

实施例2.4。获得org.hibernate.SessionFactory实例

protected void setUp() throws Exception { 
    // A SessionFactory is set up once for an application 
    sessionFactory = new Configuration() 
      .configure() // configures settings from hibernate.cfg.xml 
      .buildSessionFactory(); 
}