hibernate学习3:核心API

1、Configuration

hibernate的配置对象,用来加载核心配置文件,加载映射文件

new Configuration();//加载hibernate.properties
new Configuration().configure();//加载hibernate.cfg.xml
new Configuration().configure().addResource();//手动加载映射文件
2、SessionFactory对象

通常一个项目只需要一个。内部维护了hibernate的连接池,hibernate的二级缓存(不使用了)。线程安全的。

可以自己配置c3p0连接池

抽取工具类

public class HibernateUtils {
    public static final Configuration cfg;
    public static final SessionFactory sf;
    static {
        cfg = new Configuration().configure();
        sf = cfg.buildSessionFactory();
    }
    
    public static Seesion openSession() {
        return sf.openSession();
    }
}
3、Session对象

类似Connection对象。不是线程安全的。用来支持持久化CRUD操作。

  • 保存对象:

    save(),返回保存记录的Id

  • 查询方法:

    get()方法

    load()方法

    两者的区别: load使用了延迟加载,当使用到其中的某个属性才调用语句去查询,查询后返回的是代理对象,利用javassist技术产生的代理。get采用的是立即加载,执行到这行代码时,马上发送语句查询,返回的是真实对象本身。

  • 修改方法:update()方法,直接创建对象在修改。或者先查询在修改。

  • 删除方法:delete()方法,直接创建对象,删除。或者先查询在删除。

  • 保存或更新:saveOrUpdate()方法

  • 查询所有:createQuery()方法,使用HQL。query.list(),遍历获取值。

4、Transaction

事务对象,Hibernate管理事务。

  • commit()
  • rollback()
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值