@transactional失效
- 方法不是public修饰 :
事务是基于aop切面,切面是动态代理实现的,如果是非public的方法,不生成代理对象 - 当前类没有被spring管理
- 多线程调用
- 异常被try/catch捕获
mbp 的多表join
maven mbp-join
自动配置
@configuration @bean
依赖注入 Di
3种方法:
- 初始化
- set方法
- 接口
控制翻转 Ioc
控制: 对象创建的权利
翻转: 控制权交给外部环境(spring框架, ioc容器)
切面 aop
切: 横切
面: 横切代码逻辑涉及多个方法,每个方法都是一个点,多个点构成一个面
spring 代理
spring循环依赖 - 三级缓存
@autowired/@Resource区别
spring/javaee bytype/byname
常用注解
controller
@RestController
@controller
@getmapping
@postmapping
@pathvarible
@requestmapper
@requestbody
@requestParam
@responseStatus
@controllerAdvice
@exceptionHandler
service
@service
mapper
@mapper
model
@data
ThreadPoolExecutor构造
核心线程数
最大线程数
线程过期时间
时间单位
等待线程
处理机制
公平锁和非公平锁
redis分布式锁
redission
setnx setex: 没有watchdog, 不可重入
aqs原理
spring cloud Alibaba的组件有哪些和作用
spring 用到了那些设计模式
代理
单例
工厂
事务的传播
spring默认的事务传播是如果有事务就加入,如果没有就新建
threadlocal机制
共享线程内存,每个线程都有自己的一块内存