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

建公司网站要多少钱郑州 网站建设有限公司

建公司网站要多少钱,郑州 网站建设有限公司,永久免费google搜索引擎,南京专业做网站公司什么是自动装配#xff1f; Spring提供了向Bean中自动注入依赖的这个功能#xff0c;这个过程就是自动装配。 SpringBoot的自动装配原理基于大量的条件注解ConditionalOnXXX#xff0c;因此要先来了解一下条件注解相关的源码。 以ConditionalOnClass为例 首先来查看Conditi…什么是自动装配 Spring提供了向Bean中自动注入依赖的这个功能这个过程就是自动装配。 SpringBoot的自动装配原理基于大量的条件注解ConditionalOnXXX因此要先来了解一下条件注解相关的源码。 以ConditionalOnClass为例 首先来查看ConditionalOnClass的源码 Target({ ElementType.TYPE, ElementType.METHOD }) Retention(RetentionPolicy.RUNTIME) Documented Conditional(OnClassCondition.class) public interface ConditionalOnClass {Class?[] value() default {};String[] name() default {};} 可以看到ConditaionalOnClass注解上面又存在一个Conditaional(OnClassCondition.class)注解。对于这种关系我们把ConditionalOnClass注解叫做Conditonal注解的派生注解。 自动装配原理建立在这些大量的派生注解ConditionalOnXXX之上而这些条件注解的原理又和Condition接口有关。 具体我们可以去看OnClassCondition.class类的继承实现关系发现的确实现了Condition接口。可以多看其他类的继承实现关系图来证明。 这里我就不多粘贴了那么我们去看Condition接口的源码 FunctionalInterface public interface Condition {boolean matches(ConditionContext var1, AnnotatedTypeMetadata var2); } 该接口只有一个方法这个方法决定了是否要注册相应的bean对象这个方法中存在两个参数他们分别用来获取一些环境信息和注解元数据从而用在matches方法中判断是否符合条件。 最后我们自定义一个条件注解方便我们更好理解这些东西 创建条件判断类去实现Condition接口  class OnLinuxCondition implements Condition{Overridepublic final boolean matches(ConditionContext context,AnnotatedTypeMetadata metadata) {//根据metadata获取对应注解上的信息ListAnnotationAttributes allAnnotationAttributes //返回值是一个类似Map的数据结构但这里用List接收实际上不能这么些metadata.getAllAnnotationAttributes(ConditionalOnLinux.class.getName());//获得注解上的信息后遍历得到我想要得到的数据for(AnnotationAttributes annotationAttributes:allAnnotationAttributes){String environment annotationAttributes.getString(environment);if(linux.equals(environment)){return true;}}return false;} } 创建条件注解  Target({ElementType.TYPE,ElementType.METHOD }) Retention(RetentionPolicy.RUNTIME) Documented Conditional(OnLinuxCondition.class) class interface ConditionalOnLinux(){String environment() default ; } 测试  Configuration class LinuxConfig{BeanConditionalOnLinux(environment linux)public Environment environment(){return new LinuxEnvironment();} } 以上代码的意思是如果想要注册environment的bean那么它的环境属性一定是linux时才会注册到容器当中。
http://www.pierceye.com/news/799665/

相关文章:

  • 网站建设桂林永川网站建设公司
  • 英文网站设计制作wordpress搜索不到
  • 企业营销网站建设的基本步骤吉林省建设工程质量监督站网站
  • 现在用什么软件做网站北京工程设计公司排名
  • 烟台网站开发技术找人做网站服务器不是自己的怎么办
  • 网站样式下载pc网站建设的优势是什么
  • 网站是怎么建设的网页制作基础教程第2版葛艳玲答案
  • 企业做一个网站的费用网站设计专业需要什么
  • 昆山住房和城乡建设部网站网站开发用的工具
  • 广州优化网站建设网站建设是怎么赚钱
  • 公司建设网站公司系统软件开发培训机构
  • 小程序分销系统开发成熟的网站怎么做seo推广
  • 网站dns修改wordpress极简清新主题
  • 南京网站建设价位招商门户网站建设方案
  • 中学加强校园网站建设个人博客网站开发的原因
  • 网站域名管理中心广州市外贸网站建设企业
  • wordpress建站位置布吉网站建设价格
  • 网站域名正在维护中企业内网网站建设
  • 广西南宁官方网站企业wordpress和ueeshop
  • access数据库做网站自贸区注册公司有什么优势
  • 福州做网站公司企信网企业信用信息系统黑龙江
  • 网站建设先学什么保定徐水网站建设
  • 济南网站建设哪个好电商创业
  • 如何在年报网站上做遗失公告天津做企业网站公司
  • 嘉兴网站关键词排名网页制作与设计课程设计报告
  • 室内装饰网站模板网络营销的策略
  • 如何做网站充值58百度搜索引擎
  • 专门做衣服的网站有哪些广告公司名字怎么取
  • 亚马逊如何做折扣网站的营销在线3d建模网站
  • 深圳市seo网站设计dz做的网站容易收录吗