Spring Bean管理?
遍历扫描路径下的所有Java类,如果发现某个类上存在@Component、@Service等注解,那么Spring就把这个类记录下来,存在一个Map中。
Bean的创建?
核心,如果需要进行AOP,得到的会是一个代理对象,否则得到一个当前对象实例。
单例对象会被记录起来,下次直接从map取。
构造对象?
Spring通过类构造方法创建实例
多个构造方法默认使用无参,如果没有无参构造方法可以通过@Autowired指定构造方法
如果选择了有参构造方法,参数怎么来
Spring会根据入参的类型和入参的名字去Spring中找Bean对象
最终如果没有找到,则会报错,无法创建当前Bean对象(入参对象是否需要添加到Spring管理?)
Spring事务?
当我们在某个方法上加了@Transactional注解后,就表示该方法在调用时会开启Spring事务,而这个方法所在的类所对应的Bean对象会是该类的代理对象。
有注解的方法由代理对象执行时注释才生效?



