
面试
*^O^*Realist*^O^*
写的是自己的归纳
展开
-
Spring事务的实现方式和实现原理
Spring事务的本质其实就是数据库对事务的支持,没有数据库的事务支持,Spring是无法提供事务功能的。真正的数据库层的事务提交和回滚是通过binlog或者redo log实现的。(1)Spring事务的种类:Spring支持编程式事务管理和声明式事务管理两种方式:a) 编程式事务管理使用TransactionTemplate。b) 声明式事务管理建立在AOP之上的。其本质是通过AOP功能,对方法前后进行拦截,将事务处理的功能编织到拦截的方法中,也就是在目标方法开始之前加入一个事务,在执行完目标.原创 2021-09-22 21:23:59 · 292 阅读 · 0 评论 -
织入的时机有哪些?
织入的时机有哪些?1)编译期——切面在目标类编译时被织入。2)类加载期——切面在目标类加载到JVM时被织入,这种方式需要特殊的类加载器,可以在目标类被引入应用之前增强该目标类的字节。3)运行期——切面在应用运行的某个时刻被织入,一般情况下,在织入切面时,AOP容器会为目标对象动态地创建一个代表对象。...原创 2021-09-21 23:36:46 · 202 阅读 · 0 评论 -
数据库死锁的预防与解除
死锁发生的条件: 1、资源不能共享,需要只能由一个进程或者线程使用 2、请求且保持,已经锁定的资源自已保持着不释放 3、不剥夺,自给申请到的资源不能被别人剥夺 4、循环等待想预防死锁,把上面四个条件破坏一个就可以了。防止死锁的途径就是避免满足死锁条件的情况发生,为此用户需要遵循以下原则。(1)尽量避免并发地执行涉及到修改数据的语句。(2)要求每个事务一次就将所有要使用的数据全部加锁,否则就不予执行。(3)预先规定一个封锁顺序,所有的事务都必须按这个顺序对数据执行封...原创 2021-09-21 23:21:27 · 847 阅读 · 0 评论