Hibernate 作为一个O/R框架,主要功能是让我们可以以面向对象的方式来操作数据库,而不是用面向过程的方式。
其工作的大概流程为:
1,创建一个configuration对象,进行配置。
2,通过Configuration对象建立SessionFactory对象
3,通过SessionFactory对象创建Session对象
4,通过Session进行事务的管理
初次使用Hibernate,首先尝试使用xml配置文件的方法进行操作。
这里我们可以将Hibernate的jar包放到eclipse的User Libraries中,便于管理
1,建表,建Bean,这里以Student为例,它有id,name,age三个属性。
2,在src根目录下新建一个xml文件,hibernate.cfg.xml。
3,在Hibernate的文档中,找到样例,复制粘贴过来。
4,在该文件中,对数据库驱动类,url,用户名,密码,数据库方言进行配置。
5,在StudentBean所在的包下新建一个xml文件,Student.hbm.xml。(hdm为Hibernate mapping)
6,从文档中找到Hdm的样例,粘贴过来,并配置表名,变量名,列名等。
7,在hibernate.cfg.xml中加入<mappingresource="me/timolove/hibernate/bean/Student.hbm.xml"/>
指定需要使用的映射文件。
8,建立测试类:新建一个Student对象并对各属性赋值,执行存储的代码如下:
在Hibernate4中,已经不再使用Configuration.buildSessionFactory()这个方法了,修改之后的HibernateUtil辅助类如下,但是此处仅能使用网络上的代码,还完全无法理解:
9,运行代码,将对象的信息存入数据库。
其工作的大概流程为:
1,创建一个configuration对象,进行配置。
2,通过Configuration对象建立SessionFactory对象
3,通过SessionFactory对象创建Session对象
4,通过Session进行事务的管理
初次使用Hibernate,首先尝试使用xml配置文件的方法进行操作。
这里我们可以将Hibernate的jar包放到eclipse的User Libraries中,便于管理
1,建表,建Bean,这里以Student为例,它有id,name,age三个属性。
2,在src根目录下新建一个xml文件,hibernate.cfg.xml。
3,在Hibernate的文档中,找到样例,复制粘贴过来。
4,在该文件中,对数据库驱动类,url,用户名,密码,数据库方言进行配置。
5,在StudentBean所在的包下新建一个xml文件,Student.hbm.xml。(hdm为Hibernate mapping)
6,从文档中找到Hdm的样例,粘贴过来,并配置表名,变量名,列名等。
7,在hibernate.cfg.xml中加入<mappingresource="me/timolove/hibernate/bean/Student.hbm.xml"/>
指定需要使用的映射文件。
8,建立测试类:新建一个Student对象并对各属性赋值,执行存储的代码如下:
SessionFactorysf = HibernateUtil.configureSessionFactory();
Sessionsession = sf.openSession();
session.beginTransaction();
session.save(s);
session.getTransaction().commit();
session.close();
sf.close();
在Hibernate4中,已经不再使用Configuration.buildSessionFactory()这个方法了,修改之后的HibernateUtil辅助类如下,但是此处仅能使用网络上的代码,还完全无法理解:
privatestaticSessionFactorysessionFactory;
privatestaticServiceRegistryserviceRegistry;
publicstaticSessionFactoryconfigureSessionFactory() {
Configurationconfiguration = newConfiguration();
configuration.configure();
serviceRegistry = newServiceRegistryBuilder().applySettings(
configuration.getProperties()).buildServiceRegistry();
sessionFactory = configuration.buildSessionFactory(serviceRegistry);
returnsessionFactory;
}
9,运行代码,将对象的信息存入数据库。