这几天弄log4j和hibernate的时候都碰到可编程的配置方式这个概念,一时都转不过弯来.
在log4j的配置种,如果提供了log4j.properties文件并且放在了上下文类路径中,则不用在程序中写任何配置,直接用logger即可,相反,如果没有提供log4j.properties文件也是可以的,怎么办呢?就是用所谓的可编程的配置方式,比如如下代码就是在没有配置文件的时候实现log4j的编程配置:
BasicConfigurator.configure ();//自动快速地使用缺省Log4j环境。
//PropertyConfigurator.configure ( String configFilename) :读取使用Java的特性文件编写的配置文件。
//DOMConfigurator.configure ( String filename ) :读取XML形式的配置文件。
hibernate中的可编程配置方式和上面有点不同,hibernate在用hibernate.properties文件的时候可以用编程方式实现加载实体域配置文件(.hbm.xml),代码如下:
Configuration cfg = new Configuration()
.addFile("Vertex.hbm.xml")
.addFile("Edge.hbm.xml");
如果有hibernate.cfg.xml配置文件的话就不用上面的所谓编程配置方式了,hibernate会帮助我们自动加载和配置,代码如下:
try
{
sessionFactory = new Configuration().configure().
buildSessionFactory();
}
catch (HibernateException ex)
{
throw new RuntimeException("Exception building SessionFactory: " +
ex.getMessage(), ex);
}