hibernate的save()方法详解

save方法
Session的sava()方法用于将一个临时对象转变为持久化对象,也就是说将一个新的业务实体保存到数据库中,其语法格式如下:
session.save(PersistentClassName);

参数说明:

session:指的是session实例,可以通过以下代码创建。

Configuration config=new Configuration().configure();
SessionFactory sessionFactory=config.buildSessionFactory();
Sesson session=sessionFactory.openSession();

PersistentClassName:表示持久化类名称,用于指定哪个持久化对象保存到数据库中。

?通过save()方法将持久化对象保存到数据库的具体步骤如下:

?(1) 根据持久化类对应映射文件指定的标识符生成方式为临时对象分配一个唯一的OID并赋值给持久化类的ID属性。
(2) 将临时对象加载到缓存中,使之转变成持久化对象。
(3) 当提交事务时清理缓存,利用持久化对象包含的信息生成insert语句,真正将持久化对象包换的信息保存到数据库中。

?举个例子:

?Configuration config=new Configuration().configure();
SessionFactory sessionFactory=config.buildSessionFactory();//创建SessionFactory
Sesson session=sessionFactory.openSession();//打开Session
Transaction tx=session.beginTransaction();//开启事务
Student student=new Student();//实例化对象
student.setId(200);
.....//省略其他设置属性的代码
session.save(student);
tx.commit();//提交事务
session.close();//关闭Session

转载于:https://www.cnblogs.com/xulzong/p/3144394.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值