Configuration类中提供了configure方法,可以用来读取指定的Hibernate属性文件,为获得数据库连接对象做好准则,代码为:
public void main(String[] args){
Configuration conf = new Configuration();
conf.configure("hibernate.cfg.xml");
}
如果属性文件为hibernate.cfg.xml文件,则可省略configure方法的参数。
SessionFactory接口,SessionFactory是Session对象的工厂类,一个应用有一个唯一的SessionFactory对象,SessionFactory是不可变的,可以通过Configuration对象获得SessionFactory对象。代码如下:
public void main(String[] args){
Configuration conf = new Configuration().configure("hibernate.cfg.xml");
SessionFactory factory= conf.buildSessionFactiion();
}
SessionFactory的相关属性在hibernate.cfg.xml中配置
Session接口是java应用和Hibernate之间一个主要的运行期接口,是提供持久化服务的核心API。一个Session对象类似一个数据库连接对象,期生命周期贯穿整个逻辑事物的始末。Session的主要功能是用来操作持久化对象。是创建、读取、删除等,从而操作数据库记录。Session对象可以通过SessionFactory对象过得,Session接口有如下几个主要方法:
save(Object object)该方法将一个对象进行保存操作,将生成insert SQL 语句,想数据库中插入一条记录。 update(Object object)该方法将一个对象进行修改操作,将生成update SQL语句,修改数据库中对应的记录。
delete(Object object)该方法将一个对象进行删除操作,将生成delete SQL 语句,删除数据库中对应的记录。
Object get(Class class,Serialixable id):该方法将通过id查询得到一个对象,将生成一条select语句,通过主键值践行查询,将返回的结果记录封装成对象返回。
若果进行增删改操作,必须使用session跌向开始一个事物,并使用session对象的commit方法提交事物才能生效,如果发生错误可以是所有session对象的rollback方法回滚事物,Hibernate框架中的事物接口为Transaction,继续修改上面的代码,添加向customer表中插入一条记录的代码如下:
public static void main(String[] args){
Configuration conf = new Configuration().configure();
SessionFactory factory = conf.buildSessionFactory();
Session session = factory.openSession();
Transaction tran = session.beginTransaction();
Customer cust = new Customer("ETC","123",23,"BeiJing");
session.save(cust);
tran.commit();
session.close();
}
上述代码中先通过SessionFactory获取一个Session对象,然后通过Session对象启动事物冰冰提交事物,冰冰通过Session对象的save方法操作持久化类Customer的对象cust,从而向customer表中插入一条记录,记录的字段值即对象cust的属性值,运行后查看customer表中的记录
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有