Hibernate中的Configuration

来源:互联网 发布:只进入身体知乎 编辑:程序博客网 时间:2024/06/06 02:06

Configuration类用来管理我们的配置文件的信息的,通过它,我们可以通过创建一个configuration实例来管理相应的配置文档,但是通常我们只创建一个configuration实例。 

下面是一个通用的创建实例的代码 
try{   sessionFactory = new Configuration().configure().buildSessionFactory();  }catch(HibernateException e){   throw new RuntimeException(e.getMessage,e);  }  

在这里,我们看到:要创建一个Configuration,可以使用 
Configuration config = new Configuration().configure(); 
这里我们要明白的是,Configuration是入口,通过它来获得配置文件。 
同时Configuration还可以通过指定参数来传递: 
下面看: 
File file = new File("c:\\Hibernate.xml"); Configuration config = new Configuration().config(file); 
同时,Configuration还有一些比较重要的方法: 
addProperties(); 
setProperties();
 
下面看一下例子: 
Properties properties = Porperties.load("a.properties"); 
Configuration configure = new Configuration().setProperties(properties).config(); 
同时还可以指定.hbm.xml文件,下面是几种方法: 
addClass(); 
addFile(); 
addURL(); 

下面看一下例子: 
Configuration configure = new Configuration().addClass(Order.class); Configuration configure = new Configuration().addURL(Configuration.class.getResource(Order.hbm.xml)); Configuration configure = new Configuration().addFile("Order.hbm.xml"); 
下面简单的看一下SessionFactory类 
首先看一下代码 
Configuration configure = new Configuration().configure(); 
SessionFactory sessions = configure.buildSessionFactory(); 
这里要说明的是,SessionFactory是线程安全的,可以被多个线程调用。在我们实际开发中,我们可以在初始化的部分构造一个SessionFactory即可,比如,在一个公共静态类中初始化一个SessionFactory的readonly常量等等。它充当数据存储源的代理。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。
原创粉丝点击