发表于: 2017-03-21 20:10:22
1 1257
今天完成的事情:
学习事务管理的内容。学习spring对mybatis的支持。
明天计划的事情:
学习spring web框架内容
遇到的问题:
Exception in thread "main" org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'MybatisDao' is defined
原因是使用注解的方式自动扫描注入bean时,会将Dao的首字母变为小写。
将测试代码改成MybatisDao dao=context.getBean("mybatisDao",MybatisDao.class)即可
收获:
事务是指一系列的动作,综合在一起形成一个完整的工作单元,而且这些动作必须全部完成,如果有一个失败的话,需要回滚到最开始的状态。
- 原子性(Atomicity):事务是一个原子操作,由一系列动作组成。事务的原子性确保动作要么全部完成,要么完全不起作用。
- 一致性(Consistency):一旦事务完成(不管成功还是失败),系统必须确保它所建模的业务处于一致的状态,而不会是部分完成部分失败。在现实中的数据不应该被破坏。
- 隔离性(Isolation):可能有许多事务会同时处理相同的数据,因此每个事务都应该与其他事务隔离开来,防止数据损坏。
- 持久性(Durability):一旦事务完成,无论发生什么系统错误,它的结果都不应该受到影响,这样就能从任何系统崩溃中恢复过来。通常情况下,事务的结果被写到持久化存储器中
Spring并不直接管理事务,而是提供了多种事务管理器,他们将事务管理的职责委托给Jdbc、Hibernate、JPA/JTA等持久化机制所提供的相关平台框架的事务来实现。
评论