Hibernate 基础介绍

session 介绍

session 说白了就是操作数据库的对象
想要把对象保存到数据库中需要调用session的各种方法,比如:save()、update()、delete()、createQuery()等。

如何获取session

  • openSession()
  • getCurrentSession()
    说明: 如果想使用getCurrentSession()需要再cfg.xml 文件中配置如下:
    本地事物(jdbc事物)
    thread
    全局事物(jta)
    jta

openSession() 和getCurrentSession()的区别?

  1. getCurrentSession 在提交事物或者回滚之后会自动关闭,openSession需要手动关闭。如果使用openSession却没有手动关闭,多次之后会导致连接池溢出。
  2. openSession 每次创建新的session对象,getCurrentSession使用现有的session对象(同一个对象)。

transaction 介绍

hibernate 对数据库的操作都封装在事物当中,并且默认不自动提交事物。所以如果用session保存对象时,不开启事物,或者不提交事物,那么对象不会真的保存到数据库中。

hbm 配置文件常用设置

主键

 <id name="属性名" type="字段类型" column="数据库列名" length="字段长度">
    //主键生成策略
    <generator class="assigned" />
 </id>

主键生成策略

这里写图片描述

hibernate-mapping 标签

<hibernate-mapping 
schema="模式" 
catalog="目录名称" 
default-cascade="级联风格" 
default-access="访问策略" 
default-lazy="加载策略" 
package="包名" >
</hibernate-mapping>

class标签

<class 
name="类名" 
table="表明" 
batch-size="抓取策略,一次可以抓取多少条记录" 
where="抓取条件" 
entity-name="对应多张表名">
</class>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值