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

有什么平台可以发广告石家庄百度搜索引擎优化

有什么平台可以发广告,石家庄百度搜索引擎优化,温州seo顾问,做网站一般用什么字体前言 一个刚刚看完SpringBoot自动装配原理的萌新依据自己的理解写下的文章,如有大神发现错误,敬请斧正,不胜感激。 分析SpringBoot自动配置原理 SpringBoot的启动从被SpringBootApplication修饰的启动类开始,SpringBootApplicaiotn注解中最…

前言

一个刚刚看完SpringBoot自动装配原理的萌新依据自己的理解写下的文章,如有大神发现错误,敬请斧正,不胜感激。

分析SpringBoot自动配置原理

  1. SpringBoot的启动从被@SpringBootApplication修饰的启动类开始,@SpringBootApplicaiotn注解中最重要的注解是@EnableAutoConfiguration,其负责自动装配,底层由@Import()注解中传入一个ImportSeletor的实现类AutoConfigurationImportSelector完成自动配置类的导入
  2. AutoConfigurationImportSelector类中selectImports方法负责返回一个由自动配置类权限定类名组成的字符串数组,在这个方法中扫描了spring-boot-autoconfigure-2.6.13.jar/WEB-INF/spring.factories中的所有权限定类名,经层层返回以及@Conditional系类的注解筛选后,将需要加载的配置交给IOC容器完成自动配置

一个标准的SpringBoot启动器的组成

一个“干活的”类

这个类是整个模块的核心,他完成整个模块中的逻辑操作,他的参数需要从配置文件中获取,他需要被纳入IOC容器的管理

一个"搬运工"类

这个类从配置文件中读取数据,并被注入到核心类中,是核心类从配置文件中获取数据的桥梁

一个"与SpringBoot沟通"的类

这个类的权限定类名被写入到spring-boot-autoconfigure-2.6.13.jar/WEB-INF/spring.factories文件中,在SpringBoot容器启动时被读取,并通过@Conditional系列注解判断是否加载该配置文件,以及将核心类纳入到IOC容器管理

自定义SpringBoot启动器

目标:完成一个自我介绍类,从配置文件中获取name以及introduction介绍词

搬运工类SelfIntroductionPropertis

@ConfigurationProperties(prefix = "self") // 指定配置文件中的前缀
@Data
public class SelfIntroductionPropertis {private String name = "Default Name";private String introduction = "Default Introduction";
}

@ConfigutationProperties(prefix=“self”)使用配置绑定对象完成对配置的读取

核心类

@Data
@NoArgsConstructor
@AllArgsConstructor
public class SelfIntroductionService {@Resourceprivate SelfIntroductionPropertis selfIntroductionProperties;public String say(){return "Hello,My name is" + selfIntroductionProperties.getName() + "," + selfIntroductionProperties.getIntroduction();}
}
  • @Resource 自动注入SelfIntroductionPropertis对象
  • say()方法完成该模块的主要功能

与"SpringBoot"沟通,完成自动装配的类

@EnableConfigurationProperties(SelfIntroductionPropertis.class) 
//开启对SelfIntroductionPropertis类中@ConfigurationProperties注解的配置绑定支持,并将其纳入IOC容器管理
@ConditionalOnClass(SelfIntroductionService.class)
@Configuration // 是一个配置类,配置bean
public class SelfIntroductionAutoConfiguration {@Bean@ConditionalOnMissingBeanpublic SelfIntroductionService selfIntroductionService() {return new SelfIntroductionService();}
}
  • @EnableConfigurationProperties注解开启对SelfIntroductionPropertis类中@ConfigurationProperties注解的配置绑定支持,并将其纳入IOC容器管理
  • @ConditionalOnClass(SelfIntroductionService.class)完成自动配置的关键,只有当核心类存在时才引入这个配置类
  • @Bean 将SelfIntroductionService纳入IOC容器的管理,并指定name

将自动配置类加入到SpringBoot自动配置jar包中的WEB-INF/spring.factories中

从包中复制.factories文件到main/resource/WEB-INF文件夹下,使该自动配置类在SpringBoot启动时能被扫描到,完成自动配置
在这里插入图片描述

打包,并存入本地maven仓库

测试

新建SpringBoot工程并将自定义启动器引入

<?xml version="1.0" encoding="UTF-8"?>
<project>
。。。<dependencies><dependency><groupId>xyz.wrywebsite</groupId><artifactId>springboot-mystarted</artifactId><version>0.0.1-SNAPSHOT</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency></dependencies>
。。。</project>

配置文件编写

server.port=8080
self.name=lisi
self.introduction=wow wow wow

编写测试类

@RestController
public class BasicController {@Resourceprivate SelfIntroductionService selfIntroductionService;@GetMapping("/selfIntroduction")public String selfIntroduction() {return selfIntroductionService.say();}}

运行,输出结果

Hello,My name islisi,wow wow wow
http://www.hkea.cn/news/547700/

相关文章:

  • 集团官网建设公司外贸seo推广公司
  • 佛山新网站制作平台网站诊断工具
  • 做PPT的网站canvawhois查询
  • 营销型网站建设吉林定制化网站建设
  • 个人网上公司注册流程图新站优化案例
  • 做se要明白网站明星百度指数排名
  • 网页微博草稿箱在哪西安seo推广优化
  • 嘉兴微信网站建设谷歌首页
  • 什么网站做海报b站不收费网站
  • 如何自己做个简单网站seo知识点
  • 有哪些做批发的网站有哪些手续百度推广优化是什么意思
  • 用阿里巴巴店铺做公司网站怎么样引擎搜索有哪些
  • 网页制作软件属于什么软件类别简述seo的优化流程
  • 网站建设 公司新闻谷歌排名网站优化
  • 怎样做自己的vip解析网站佛山外贸seo
  • 我的网站在百度搜不到了seo是什么职业做什么的
  • 网站私信界面国外网站seo免费
  • wordpress mysql类惠州网站seo
  • 为什么做网站必须要用域名举出最新的网络营销的案例
  • 电子请柬网站开发百度竞价推广登录入口
  • 网站设计与推广国际时事新闻2022最新
  • 柬埔寨网站开发营销技巧和营销方法
  • 网站建立价格长沙网站外包公司
  • 王建设医生个人网站免费google账号注册入口
  • 免费自建手机网站搜索引擎优化的方法包括
  • 甘肃省建设工程安全质量监督管理局网站官网拉新项目官方一手平台
  • 做电影网站赚钱武汉新闻最新消息
  • 做网站没有成本的方法上海百度分公司电话
  • 寺庙网站建设百度ai人工智能
  • 完成公司网站建设下载关键词推广软件