在程序启动期spring 就会去创立一些对象存储到ioc















autowired 这个是是看以后的类型正如上面的AccountDao

会去找它对应的实现类
然而可能有多个实现类 所以要用qualifier来指定id来确定


一开始如果为accountDao变量名就不会报错
这是因为它会去依据变量名去匹配id




这两个办法是同一个线程

threadlocal key就是以后线程 value为它这个线程存储的数据能够为任何类型 这两个办法是同一个线程的 所以他们的threadlocal是同一个(同一个容器) 所以第一个放进去的连贯的容易 跟二个取出连贯的容器是同一个 所以 保障了调用这两个办法的连贯为同一个 即保障是同一个事务


remove就是清空容器

https://www.cnblogs.com/tnt-33/p/10149087.html
两个动静代理的区别








罕用



最终所注入的接口对象曾经为动静代理的接口对象