Hibernate中Hibernate配置文件有三种形式:
1.使用Eclipse IDE自动生成的Hibernate-cfg.xml文件,目录在工程下的classes目录下
调用方式为:
Configuration config = new Configuration().config();
SessionFactory sessionFactory = config.buildSessionFactory();
Session session = sessoinFactory.openSession();
2.如果配置文件后缀名为.XML格式的文件而名字不是Hibernate-cfg.xml,是自己定义的一个名字.比如:aaa.xml,目录在工程下的classes目录下,调用方式为:
Configuration config = new Configuration().config("aaa.xml");
SessionFactory sessionFactory = config.buildSessionFactory();
Session session = sessionFactory.openSession();
3.如果配置文件为Hibernate.properties,文件后缀名是*.properties的话,同样是工程下的classes目录下
调用方式为:
Configuration config = new Configuration();//跟上面不一样的是,这后面什么方法都不调用
而是例如这里有一个Customer的javaBean需要被持久化到数据库里,而对应的也有他的customer.hbm.xml配置文件的话
config.addClass(Customer.class);
如果还有其他的javaBean你可以
config.addClass(Customer.class),addClass(A.class).addClass(B.class);
SessionFactory sessionFactory = config.buildSessionFactory();
Session session = sessionFactory.openSession();
反正都要被加载到缓存中,Hibernate在运行的时候会根据你的Customer.class查找对应的Customer.hbm.xml文件进行加载元数据信息,总之一句话你把所有需要持久化的对象都要用addClass()进行加载就行了但是必须要有对应的*.hbm.xml配置文件相对应
运行上面代码时候已经启动Hibernate了.前提条件是你在数据库中已经建好了相应的表了.
如果还没有在数据库中建表,而希望Hibernate帮你自动生成表的话还需要在初始化 Configuration 对象代码下面加上以下代码
new SchemaExport(config).create(true,true);
这样的话Hibernate会自动帮你生成数据库Schema的.
以上是我整理出的所有Hibernate启动配置的时候需要注意的一些情况,如果还有什么不明白的话,可以继续发帖子问我.希望对你有所帮助.