struts2的Container
来源:互联网 发布:tomcat端口有哪些 编辑:程序博客网 时间:2024/04/30 10:08
Container的实现类是ContainerImpl
首先只看一部分 看他的属性和其中一个构造函数
final Map<Key<?>, InternalFactory<?>> factories;final Map<Class<?>, Set<String>> factoryNamesByType;ContainerImpl( Map<Key<?>, InternalFactory<?>> factories ) {this.factories = factories;Map<Class<?>, Set<String>> map = new HashMap<Class<?>, Set<String>>();for ( Key<?> key : factories.keySet() ) {Set<String> names = map.get(key.getType());if (names == null) {names = new HashSet<String>();map.put(key.getType(), names);}names.add(key.getName());}for ( Entry<Class<?>, Set<String>> entry : map.entrySet() ) {entry.setValue(Collections.unmodifiableSet(entry.getValue()));}this.factoryNamesByType = Collections.unmodifiableMap(map);}
<bean type="com.service.UserService" name="service1" class="com.service.impl.UserServiceImp1" /> <bean type="com.service.UserService" name="service2" class="com.service.impl.UserServiceImp2" />
factories就是所有构造bean的工厂 要构造什么bean就找对应的工厂构造
怎么得到工厂?用key key是之后会看到 Key.newInstance(type, name) type和name就是struts.xml配置的信息
然后factoryNamesByType就是一个type对应多个name
0 0
- struts2的Container
- Struts2源码浅析-Container
- Struts2容器之Container与ContainerImpl深入剖析及其Struts2依赖注入的原理剖析
- Struts2(XWork)中的Container 一
- container-fluid container的区别
- Struts2容器Container源码阅读笔记
- container和container-fluid之间的区别
- Container 容器的使用
- Container.DataItem的含义
- Container.DataItem的含义
- .container类的说明
- ng-container的使用
- laravel的Container
- Container
- Container
- Container
- Container
- Container
- zthread学习 实例五 非任务对象的生存期
- [Python]网络爬虫(二):利用urllib2通过指定的URL抓取网页内容
- JSP页面显示倒计时
- 简明Vim练级攻略
- LeetCode---(83) Remove Duplicates from Sorted List
- struts2的Container
- 大数的减法
- boost asio学习笔记(1) echo服务端
- zthread学习 实例六 访问控制
- SQLHelper
- java邮件发送工具类
- [Python]网络爬虫(三):异常的处理和HTTP状态码的分类
- MFC 多线程通信 MultiThread7实例
- zthread学习 实例七 线程本地存储