前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hibernate中的主要API

Hibernate中的主要API

作者头像
OECOM
发布2020-07-02 10:06:21
5450
发布2020-07-02 10:06:21
举报
文章被收录于专栏:OECOMOECOM

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表中的记录

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2015-04-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档