1 Star 0 Fork 0

Yip/实验二 利用Spring boot的自动装配特性实现动态注册组件

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

东莞理工学院网络空间安全学院

课程名称 :企业级开发框架专题                                                                                                                              学期:2020秋季

实验名称:实验二 利用Spring boot的自动装配特性实现动态注册组件    实验序号:二
姓名:叶薰馥     学号:201841413237    班级:18网工2班
实验地址:     实验日期:2020-10-19    同组同学:无
指导老师:黎志雄    教师评语:    实验成绩:    

实验二 利用Spring boot的自动装配特性实现动态注册组件

一、实验目的

1、 掌握Spring Boot的自动配置原理;
2、 掌握Spring框架动态注册Bean的原理;
3、 掌握自动生成元数据文件。
4、 掌握spring框架的事件模型。

二、实验环境

1、 JDK 1.8或更高版本
2、 Maven 3.6+
3、 IntelliJ IDEA

三、实验任务

1、通过IntelliJ IDEA的Spring Initializr向导创建Spring Boot项目;

创建项目


添加 Spring Configuration Processor 依赖


2、创建一个自定义的CommandLineRunner接口的实现类;

创建CustomCommandLineRunner类,实现CommandLineRunner


3、创建一个自定义的自动配置类;

创建AutoConfig自动配置类


4、创建spring.factories文件;

创建spring.factories文件,并指定它的值为刚才自定义的自动配置类的全限定类路径的类名


测试运行程序,运行结果显示我们自定义的自动配置类已经生效


5、给自动配置类添加有效条件;

利用@ConditionalOnProperty注解,添加属性条件


在application.properties属性文件中添加一个自定义的属性


切换属性值为true,自动装配的配置类生效


切换属性值为false,自动装配的配置类失效


6、自定义的一个Bean,绑定属性值,并生成spring配置类的元数据文件;

创建一个CustomProperties类,并在类上加@ConfigurationProperties注解,设置注解的prefix属性指定绑定的属性的前缀。


在AutoConfig配置类上添加@EnableConfigurationProperties,并指定装配的属性Bean。


编译打包项目。观察target目录下的元数据文件


回去编辑属性文件时,只要输入属性的部分关键字,idea会自动提示


7、根据阅读框架源码,我们可以自定义一个事件发布器,并设置线程池,实现异步发布事件;

自定义的事件发布器


自定义事件类


自定义事件监听器


编写一个测试用例,检查发布事件时,是否使用了多线程异步处理


运行单元测试结果,显示成功使用了多线程异步处理


8、自定义 ApplicationReadyEvent 的事件监听器。

自定义一个ApplicationReadyEvent的事件监听器


终端显示输出的指定信息是在CommandLineRunner的输出信息之后


空文件

简介

取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/y1ip/springboot-experiment-2.git
git@gitee.com:y1ip/springboot-experiment-2.git
y1ip
springboot-experiment-2
实验二 利用Spring boot的自动装配特性实现动态注册组件
master

搜索帮助