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

做彩票网站的方案网站优化就是搜索引擎优化

做彩票网站的方案,网站优化就是搜索引擎优化,网站自己推广怎么做,中信建设有限责任公司电话号码近日,余溺于先贤古哲之文无法自拔。虽未明其中真意,但总觉有理。遂抄录一篇以供诸君品鉴——公孙鞅曰:“臣闻之:‘疑行无名,疑事无功。’君亟定变法之虑,殆无顾天下之议之也。且夫有高人之行者,…

近日,余溺于先贤古哲之文无法自拔。虽未明其中真意,但总觉有理。遂抄录一篇以供诸君品鉴——公孙鞅曰:“臣闻之:‘疑行无名,疑事无功。’君亟定变法之虑,殆无顾天下之议之也。且夫有高人之行者,固见负于世;有独知之虑者,必见骜于民。语曰:‘愚者暗于成事,知者见于未萌。民不可与虑始,而可与乐成。’郭偃之法曰:‘论至德者,不和于俗;成大功者,不谋于众。’法者所以爱民也,礼者所以便事也。是以圣人苟可以强国,不法其故;苟可以利民,不循其礼。”

余觉“愚者暗于成事,知者见于未萌”极富道理。吾常昏聩于事成,虽欲梳之,却无人问津矣!故常不解周遭之所为,甚欲恶语向之。譬如本篇:何为自动装配?若美帝科幻巨制之机器人,勿需人工,程序自动为之也。每欲言之,人多避之。吾甚不解,窃语曰:“此虽小,却也值庆,如此为之,却是为何?”思虑再三,决意书之。

前篇(《SpringBoot自动装配(一)》)言至自动装配之入口及过程。虽小有所得,但终是狂妄自大,思虑不周,遗问颇多,譬如:千万自配者,何以滤之?说白了,就是我没有搞清楚SpringBoot启动时是如何对自动装配类进行过滤的。还有上篇文章想当然的认为DeferredImportSelector接口的实现类AutoConfigurationImportSelector中的selectImports()方法是在ConfigurationClassParser#processImports(ConfigurationClass configClass, SourceClass currentSourceClass,       Collection<SourceClass> importCandidates, boolean checkForCircularImports)方法中调用的,不过经人提醒后发现其实并非如此。

1 Spring是如何决定加载哪些配置类的?

要回答这个问题,我们首先要知道Spring是何时何地开始加载自动配置类的。巧的是上篇文章对这个点进行了梳理,这个入口就在AutoConfigurationImportSelector类的selectImports(AnnotationMetadata annotationMetadata)方法中,这个方法执行了一堆逻辑(具体可参见《SpringBoot自动装配(一)》这篇文章的三小节),其中有一段代码是这样写的:

configurations = filter(configurations, autoConfigurationMetadata);

与这个调用相关的方法位于AutoConfigurationImportSelector类中,与调用者selectImports()方法处于同一类中,其具体源码如下所示:

private List<String> filter(List<String> configurations,AutoConfigurationMetadata autoConfigurationMetadata) {long startTime = System.nanoTime();String[] candidates = configurations.toArray(new String[configurations.size()]);boolean[] skip = new boolean[candidates.length];boolean skipped = false;for (AutoConfigurationImportFilter filter : getAutoConfigurationImportFilters()) {invokeAwareMethods(filter);boolean[] match = filter.match(candidates, autoConfigurationMetadata);for (int i = 0; i < match.length; i++) {if (!match[i]) {skip[i] = true;skipped = true;}}}if (!skipped) {return configurations;}List<String> result = new ArrayList<String>(candidates.length);for (int i = 0; i < candidates.length; i++) {if (!skip[i]) {result.add(candidates[i]);}}if (logger.isTraceEnabled()) {int numberFiltered = configurations.size() - result.size();logger.trace("Filtered " + numberFiltered + " auto configuration class in "+ TimeUnit.NANOSECONDS.toMillis(System.nanoTime() - startTime)+ " ms");}return new ArrayList<String>(result);
}

这个方法首先将configurations集合转变为String[]类型的数组(变量candidates,注意跟踪时这个对象的数量为127);然后创建boolean[]类型的变量skip(注意其大小与candidates的大小一致);接着调用本类中的getAutoConfigurationImportFilters()方法获取一个AutoConfigurationImportFilter集合(该集合中只有一个元素,即OnClassCondition,这个类位于org.springframework.boot.autoconfigure.condition包中),并遍历这个集合(首先通过反射调用对象AutoConfigurationImportFilter上的Aware方法,接着调用AutoConfigurationImportFilter对象上的match()方法,实际调用的是OnClassCondition中的match()方法)。这里看一下Filter的体系结构:

http://www.yidumall.com/news/87419.html

相关文章:

  • laravel做网站免费seo优化
  • 网站总浏览量天天seo百度点击器
  • 北京公司网站设计价格百度竞价代理公司
  • 做家乡网站源代码西安百度关键词优化
  • 广州番禺区房价网站seo诊断分析报告
  • 网站css优化网站推广方式组合
  • 做汽车网站免费影视软件靠什么赚钱
  • 中国顶级网站建设黄冈地区免费网站推广平台
  • 学校网站建设及使用档案百度账号怎么注销
  • 单位网站建设实施方案搜索引擎优化公司
  • 上门做网站公司网页模板之家
  • 企业网站用免费程序sem竞价代运营
  • 佛山网站建设推荐重庆企业网站排名优化
  • 泉州企业网站维护定制搜索引擎哪个最好用
  • 网站做重新做_域名不换_空间想转到新网站这边新闻摘抄2022最新5篇
  • 新手网络设计师人生规划网站整站优化推广方案
  • 随州网站建设哪家专业免费crm系统手机版
  • 临沂做网站哪家好网推渠道
  • 哪个网站可以免费做国外网站宁波网站建设优化企业
  • 菠菜网站做首存上海关键词排名搜索
  • 上海 网站备案合肥网站排名提升
  • 西双版纳傣族自治州人民政府官网北京seo优化哪家好
  • 台州网站建设企业营销技巧美剧
  • 如何在人力资源网站做合同续签seo方案怎么做
  • 优惠活动制作网站新闻头条 今天
  • 建设银行 嘉定 网站企业网站建站模板
  • 技术成果交易网站建设方案全网热搜榜
  • 网站的好坏百度seo推广工具
  • 网站开发 实名认证需要备案吗百度一下你就知道官方
  • 上海做公司网站的公司seo是一种利用搜索引擎