当前位置: 首页> 文旅> 美景 > 哈尔滨服务好的建站_百度推广app下载_优化搜索曝光次数的方法_凡科建站收费价目表

哈尔滨服务好的建站_百度推广app下载_优化搜索曝光次数的方法_凡科建站收费价目表

时间:2025/7/14 8:44:46来源:https://blog.csdn.net/m0_74977981/article/details/144459604 浏览次数:0次
哈尔滨服务好的建站_百度推广app下载_优化搜索曝光次数的方法_凡科建站收费价目表

目录

引入

一、事务存在的意义

1.事务是什么?

2.Mybatis关于事务的管理

程序员自己控制处理的提交和回滚


 

引入

一、事务存在的意义

1.事务是什么?

多个操作同时进行,那么同时成功,那么同时失败。这就是事务。

事务有四个特性:一致性、持久性、原子性、隔离性

比如有一个订单业务:

1.订单表当中添加一条记录

2.商品数量数据更新(减少)

3.....

 当多个任务同时进行操作的时候,这些任务只能同时成功,或者同时失败(即引入中的转账操作)。

2.Mybatis关于事务的管理

MyBatis框架中的事务默认是手动提交的,也就是每次编写程序都需要调用commit()方法提交事务。

程序员自己控制处理的提交和回滚

SqlMapConfig.xml文件中配置:

<transactionManager type="JDBC"></transactionManager>  ====》程序员自己控制处理的提交和回滚

设置自动提交事务,可以通过openSession的方法进行设置,openSession(true) 自动提交事务。代码如下:(配置中的策略不变)

public class UserTest {private InputStream in = null;private SqlSession session = null;private UserDao mapper = null;@Before  //前置通知, 在方法执行之前执行public void init() throws IOException {//加载主配置文件,目的是为了构建SqlSessionFactory对象in = Resources.getResourceAsStream("SqlMapConfig.xml");//创建SqlSessionFactory对象SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(in);//通过SqlSessionFactory工厂对象创建SqlSesssion对象session = factory.openSession(true);  //关闭//通过Session创建UserDao接口代理对象mapper = session.getMapper(UserDao.class);}@After  //@After: 后置通知, 在方法执行之后执行 。public void destory() throws IOException {//释放资源session.close();in.close();}@Testpublic void insertMoreByList(){User user1 = new User("a1","男","北京");User user2 = new User("a2","男","北京");User user3 = new User("a3","男","北京");List<User> users = Arrays.asList(user1,user2,user3);int result = mapper.insertMoreByList(users);//session.commit();  //手动提交事务System.out.println(result);}}

 为了程序安全性,在涉及commit()事务提交的方法中配置:

  @Testpublic void Insert(){User user=new User("aa",new Date(),"男","保定");mapper.insert(user);try{session.commit();//事务提交}catch (Exception e){session.rollback();//回滚(一旦发现try中的语句没执行成功,立刻回滚程序)}finally {if(session!=null){session.close();}}}
关键字:哈尔滨服务好的建站_百度推广app下载_优化搜索曝光次数的方法_凡科建站收费价目表

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: