第07章 Spring-boot创建属于自己的自动配置 starter pom
前言
-
为什么要使用 Spring-Boot?
可参考官方文档。
-
什么是 Spring-Boot?
可参考官方文档说明。
-
官方地址
https://spring.io/projects/spring-boot
目标
- 完成 Jenkins 在 Docker 中的安装与配置。
- 安装在 Docker 中的 Jenkins 能正常对外提供服务。
- 在外部开发环境中能正常访问和使用 Jenkins 持续集成服务。
环境
-
**VMware:**VMware Workstation 14 Pro
-
**Linux:**CentOS7.4
-
**Docker:**18.06.0-ce, build 0ffa825
-
**Jenkins:**Jenkins2.121.1
-
**JDK:**jdk1.8.0_172
-
**Spring-Boot:**2.0.4
-
**Eclipse:**Eclipse Neon.3 (4.6.3)
-
spring-tool-suite:
Version: 3.8.4.RELEASE
Build Id: 201703310825
Platform: Eclipse Neon.3 (4.6.3) -
**Maven:**3.5.0
实现目标
写一个自己的自动化配置,并实现 starter pom 具有更通用的耦合度更低的配置。
实现方法
仿照 http 编码配置的例子
实现规划和设计
当某个类存在的时候,自动配置这个类的 Bean,并可将Bean的属性在 application.properties 或 application.yml 中配置,或者自定义自己的一个配置文件。
实现步骤
1、新建 starter 的 maven 项目,建一个普通的 maven项目即可。
2、修改pom.xml,增加配置
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure</artifactId>
<version>2.0.3.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-configuration-processor</artifactId>
<version>2.0.3.RELEASE</version>
<optional>true</optional>
</dependency>
3、属性配置,新建一个java Bean 属性配置类,加类注解配置:
(1)属性配置在 application.yml 或者 application.properties 的注解配置:
@ConfigurationProperties(prefix = “hello”)
(2)属性配置在 application.yml 或 application.properties 和通缩在自定义属性配置文件的类注解配置:
@ConfigurationProperties(prefix=“author”, locations={“classpath:config/author.properties”})
4、新建一个判断依据类。
根据此类的存在与否来创建这个类的 Bean,这个类可以是第三方类库的类。
5、新建自动化配置类,添加类注解。
@Configuration
@EnableConfigurationProperties(DemoHelloProperties.class)
// 根据提供的参数,通过该注解配置判断类在类路径中是否存在,且当容器中没有这个 Bean 的情况下自动配置这个 Bean
@ConditionalOnClass(DemoHelloService.class)
@ConditionalOnProperty(prefix = “hello”, value = “enabled”, matchIfMissing = true)
6、注册配置。要想自动配置生效,需要注册自动配置类。在 src/main/resources 下新建 META-INF/spring.factories
在文件中为新建的自动化配置类进行注册,如下:
org.springframework.boot.autoconfigure.EnableAutoConfiguration=
com.ringyin.demo.autoconfigure.demo.DemoHelloAutoConfiguration
有多个自动配置,则用“,”分割,此处“\”是为了换行后仍然能读到属性。
7、使用 starter。新建 Spring Boot 项目,并将 自定义的 starter 作为依赖。
启动,查看效果,自定义配置的 starter 是否生效。
在开发阶段,引入我们自定义的 starter 项目依赖。稳定后,可以安装到本地库,或者将这个 jar 发布到 maven 私服上。
Elicpse使用技巧-打开选中文件文件夹或者包的当前目录
标签:管理工具,其他发布于 2016-08-10 22:25:51
很多时候,我们需要在eclipse那里打开选中文件(文件夹,包)的当前目录,在资源管理器那里显示这个目录,这个时候,我们又不想采用“选中文件/文件夹/包名–右击–Properties–Location–复制路径–打开我的电脑–粘贴地址–回车”这种繁琐的方式的话,那就可以参考以下方法。
方法一:
1.点击菜单栏上的Run–External Tools–External Tools Configurations…
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TIpm9MIQ-1599828415009)(assets/xM4ecT6GJMP8BYXanZzdFxc6nEB6tTWX.png)]
2.双击左边的Program,并按下图填上参数
分别是:
Name:打开当前文件所在目录
Location: C:/WINDOWS/explorer.exe
Arguments: ${container_loc}
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hmuPdAur-1599828415011)(assets/eWD4W4HTERkaTh4nEcQ6fQriDrmadikm.png)]
3.切换到Common那里,勾上External Tools,然后点击Apply,再点击Close即可。
这样以后,选中文件/文件夹/包名,然后点击以下图标的右边的三角符号,即可在资源管理器那里打开所选的文件/文件夹/包名的所在目录了
方法二:
3.切换到Common那里,勾上External Tools,然后点击Apply,再点击Close即可。
[外链图片转存中…(img-7gj4shT5-1599828415015)]
这样以后,选中文件/文件夹/包名,然后点击以下图标的右边的三角符号,即可在资源管理器那里打开所选的文件/文件夹/包名的所在目录了
方法二:
安装Eclipse插件,如:EasyExplorer插件