hibernate批量插入数据库操作案例

本文详细介绍了使用Hibernate框架保存User1实例的过程。包括创建Session和Transaction、实例化User1对象并设置名称属性、采用数据库序列自动生成策略为User1对象分配主键、执行save方法保存对象、使用flush方法清理缓存并发送SQL语句到数据库、提交事务确保数据持久化等关键步骤。


public void testSave1() {
               Session session = null;
               Transaction tx = null;
               try {
                       session = HibernateUtils.getSession();
                       tx = session.beginTransaction();
                       User1 user = new User1();
                       user.setName("李四");

                        //主键采用数据库序列自动生成策略
                       session.save(user);

                        /*flush()和缓存相关。执行时会清除session缓存并向数据库发送SQL语句并执行,但此时如果数据库当前    存 在一个事务,数据库会先将这些SQL语句缓存起来,那么此时在数据库中是无法看到SQL语句执行结果的。除非执行commit提交了事务。只要没有执行commit()方法,就能通过rollback()方法进行回滚*/
                       session.flush();

                       /*提交事务,默认情况下commit操作会先执行flush清理缓存,所以不用显示的调用flush,commit后数据是无法 回滚的*/
                       tx.commit();
               } catch (Exception e) {
                       e.printStackTrace();
                       tx.rollback();
               } finally {
                       HibernateUtils.closeSession(session);
               }
       }

转载于:https://my.oschina.net/u/1429171/blog/383545

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值