当前位置: 首页 > news >正文

免费下载公司宣传册设计样本seo查询系统源码

免费下载公司宣传册设计样本,seo查询系统源码,枣庄公司做网站,市场营销策划方案模板DefaultListableBeanFactory 是一个完整的、功能成熟的 IoC 容器,如果你的需求很简单,甚至可以直接使用 DefaultListableBeanFactory,如果你的需求比较复杂,那么通过扩展 DefaultListableBeanFactory 的功能也可以达到&#xff0c…

DefaultListableBeanFactory 是一个完整的、功能成熟的 IoC 容器,如果你的需求很简单,甚至可以直接使用 DefaultListableBeanFactory,如果你的需求比较复杂,那么通过扩展 DefaultListableBeanFactory 的功能也可以达到,可以说 DefaultListableBeanFactory 是整个 Spring IoC 容器的始祖。

新建两个实体类User和UserMessage类和一个配置类MyConfig

@Data
@AllArgsConstructor
@NoArgsConstructor
public class UserMessage {private String phone;private String address;
}@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {private String username;@Autowiredprivate UserMessage userMessage;
}public class MyConfig {@Beanpublic User user(){return new User();}@Beanpublic UserMessage userMessage(){return new UserMessage("17860397188","123456");}
}

 动态注册 Bean,这是 DefaultListableBeanFactory 的功能之一,不过准确来说应该是动态注册 BeanDefinition 。

DefaultListableBeanFactory beanFactory = new DefaultListableBeanFactory();AbstractBeanDefinition beanDefinition = BeanDefinitionBuilder.genericBeanDefinition(MyConfig.class).getBeanDefinition();beanFactory.registerBeanDefinition("config",beanDefinition);AnnotationConfigUtils.registerAnnotationConfigProcessors(beanFactory); //为beanfactory添加后处理器//beanfactory 后处理器解析@Bean等注解Map<String, BeanFactoryPostProcessor> beansOfType = beanFactory.getBeansOfType(BeanFactoryPostProcessor.class);beansOfType.values().forEach(i->i.postProcessBeanFactory(beanFactory));//Bean后处理器,针对Bean生命周期的各个阶段提供扩展,例如@AutowiredbeanFactory.getBeansOfType(BeanPostProcessor.class).values().forEach(beanFactory::addBeanPostProcessor);Arrays.stream(beanFactory.getBeanDefinitionNames()).forEach(i-> System.out.println(i));User user = (User) beanFactory.getBean("user");System.out.println(user.getUserMessage());

Bean 的懒加载。这个时候先把 BeanDefinition 定义好,等到真正调用 Bean 的时候,才会去初始化 Bean。在 DefaultListableBeanFactory 中还有一个 preInstantiateSingletons 方法可以提前注册 Bean,该方法是在 ConfigurableListableBeanFactory 接口中声明的,DefaultListableBeanFactory 类实现了 ConfigurableListableBeanFactory 接口并实现了接口中的方法。

@Override
public void preInstantiateSingletons() throws BeansException {if (logger.isTraceEnabled()) {logger.trace("Pre-instantiating singletons in " + this);}// Iterate over a copy to allow for init methods which in turn register new bean definitions.// While this may not be part of the regular factory bootstrap, it does otherwise work fine.List<String> beanNames = new ArrayList<>(this.beanDefinitionNames);// Trigger initialization of all non-lazy singleton beans...for (String beanName : beanNames) {RootBeanDefinition bd = getMergedLocalBeanDefinition(beanName);if (!bd.isAbstract() && bd.isSingleton() && !bd.isLazyInit()) {if (isFactoryBean(beanName)) {Object bean = getBean(FACTORY_BEAN_PREFIX + beanName);if (bean instanceof FactoryBean) {final FactoryBean<?> factory = (FactoryBean<?>) bean;boolean isEagerInit;if (System.getSecurityManager() != null && factory instanceof SmartFactoryBean) {isEagerInit = AccessController.doPrivileged((PrivilegedAction<Boolean>)((SmartFactoryBean<?>) factory)::isEagerInit,getAccessControlContext());}else {isEagerInit = (factory instanceof SmartFactoryBean &&((SmartFactoryBean<?>) factory).isEagerInit());}if (isEagerInit) {getBean(beanName);}}}else {getBean(beanName);}}}// Trigger post-initialization callback for all applicable beans...for (String beanName : beanNames) {Object singletonInstance = getSingleton(beanName);if (singletonInstance instanceof SmartInitializingSingleton) {final SmartInitializingSingleton smartSingleton = (SmartInitializingSingleton) singletonInstance;if (System.getSecurityManager() != null) {AccessController.doPrivileged((PrivilegedAction<Object>) () -> {smartSingleton.afterSingletonsInstantiated();return null;}, getAccessControlContext());}else {smartSingleton.afterSingletonsInstantiated();}}}
}

http://www.ds6.com.cn/news/43190.html

相关文章:

  • 家用机能否做网站服务器seo诊断的网络问题
  • 网站开发参考文献格式网站宣传和推广的方法有哪些
  • 网站维护预算steam交易链接在哪
  • 沈阳做网站的企业自助建站系统开发
  • 自助建站最好的平台谷歌seo零基础教程
  • 租赁网站空间互动营销是什么
  • 网站上传文件夹权限百度搜索图片
  • 老板说做个网站我要怎么做企业网站设计要求
  • 昆明网站建设ynmdwl正规网络推广服务
  • wordpress 主题 中国风搜索引擎优化英文简称为
  • 杭州网站建设开发宁波seo在线优化公司
  • 网站百度快照更新朝阳区搜索优化seosem
  • 做网站充值犯法吗网店推广联盟
  • 做网站标题头像网络优化培训要多少钱
  • wordpress 顶一下网站排名优化工具
  • 未做301重定向的网站百度提问登陆入口
  • 长沙做旅游网站多少钱做引流推广的平台
  • 2019银川住房建设规划信息网站厦门seo顾问
  • 专门做试卷的网站软文营销文章
  • 公司装修怎么做账百度seo排名规则
  • 石家庄电子商城网站建设软文案例短篇
  • 外国优秀网站seo的搜索排名影响因素主要有
  • 网站建设案例价位bt磁力搜索引擎在线
  • 越秀区居家办公百度seo视频教程
  • java和php做网站区别网址如何下载视频
  • 自己ip做网站网络域名综合查询
  • 用c语言可以做网站吗成品网站源码
  • 公司网站需要程序员做吗百度竞价排名规则
  • 聊城哪里网站做的好登封搜索引擎优化
  • 天津网站seo服务网络营销策划书案例