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

国家企业信用信息公示系统四川网站产品优化方案

国家企业信用信息公示系统四川,网站产品优化方案,网站后台管理系统的主要功能,东莞人才市场招聘会当我们想要封装一些自定义功能给别人使用的时候#xff0c;创建Spring Boot Starter的形式是最好的实现方式。如果您还不会构建自己的Spring Boot Starter的话#xff0c;本文将带你一起创建一个自己的Spring Boot Starter。 快速入门 创建一个新的 Maven 项目。第三方封装的…当我们想要封装一些自定义功能给别人使用的时候创建Spring Boot Starter的形式是最好的实现方式。如果您还不会构建自己的Spring Boot Starter的话本文将带你一起创建一个自己的Spring Boot Starter。 快速入门 创建一个新的 Maven 项目。第三方封装的命名格式是 xxx-spring-boot-starter 例如didispace-spring-boot-starter。 编辑pom.xml添加spring-boot-autoconfigure和spring-boot-starter依赖 dependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter/artifactId/dependencydependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-autoconfigure/artifactId/dependency /dependencies 创建一个用 Configuration 注释的配置类在这里您可以使用Bean来创建使用ConditionalOnClass、ConditionalOnMissingBean等条件注释来控制何时应用配置。 Configuration ConditionalOnClass(MyFeature.class) ConditionalOnProperty(prefix myfeature, name enabled, matchIfMissing true) public class MyFeatureAutoConfiguration {BeanConditionalOnMissingBeanpublic MyFeature myFeature() {return new MyFeature();} } 在src/main/resources/META-INF目录下创建spring.factories文件并在org.springframework.boot.autoconfigure.EnableAutoConfiguration关键字下列出您的自动配置类比如 org.springframework.boot.autoconfigure.EnableAutoConfiguration\ com.didispace.myfeature.MyFeatureAutoConfiguration 该配置的作用是让Spring Boot应用在引入您自定义Starter的时候可以自动这里的配置类。 注意Spring Boot 2.7开始不再推荐使用spring.factories而是改用/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports文件内容直接放需要自动加载配置类路径即可。这个变更具体可见之前的这篇文章《Spring Boot 2.7开始spring.factories不推荐使用了》 验证测试 在制作Spring Boot Starter的时候一定记得使用单元测试来验证和确保自动化配置类在任何条件逻辑在启动器下能够按照正确的预期运行。 创建单元测试 使用SpringBootTest加载完整的应用程序上下文并验证启动程序是否正确配置了 Bean 和属性。 SpringBootTest(classes TestApplication.class) public class MyStarterAutoConfigurationTest {Autowired(required false)private MyService myService;Testpublic void testMyServiceAutoConfigured() {assertNotNull(myService, MyService should be auto-configured);} } 覆盖不同的配置 如果有不同的配置方案那么还需要使用TestPropertySource或DynamicPropertySource覆盖属性以测试不同配置下的情况。 或者也可以直接简单的通过SpringBootTest中的属性来配置比如下面这样 SpringBootTest(properties my.starter.custom-propertycustomValue) public class MyStarterPropertiesTest {Value(${my.starter.custom-property})private String customProperty;Testpublic void testPropertyOverride() {assertEquals(customValue, customProperty, Custom property should be overridden by SpringBootTest);} } 覆盖Conditional的不同分支 如果您的启动器包含条件配置比如ConditionalOnProperty、ConditionalOnClass等注解那么就必须编写测试来覆盖所有条件以验证是否已正确。 比如下面这样 SpringBootTest(classes {TestApplication.class, MyConditionalConfiguration.class}) ConditionalOnProperty(name my.starter.enable, havingValue true) public class MyStarterConditionalTest {Autowiredprivate ApplicationContext context;Testpublic void conditionalBeanNotLoadedWhenPropertyIsFalse() {assertFalse(context.containsBean(conditionalBean),Conditional bean should not be loaded when my.starter.enable is false);} } 为了覆盖不同的条件分支我们通常还需要使用TestConfiguration注解来有选择地启用或禁用某些自动配置。 小结 本文介绍了两个Spring Boot的进阶内容 如何创建 Spring Boot Starter 如何为 Spring Boot Starter 提供单元测试 文章转载自程序猿DD 原文链接https://www.cnblogs.com/didispace/p/18037231 体验地址引迈 - JNPF快速开发平台_低代码开发平台_零代码开发平台_流程设计器_表单引擎_工作流引擎_软件架构
http://www.zqtcl.cn/news/12924/

相关文章:

  • 佛山企业门户网站建设恋月wordpress主题
  • 做交易网站需要多少钱如何编写网站建设
  • 杭州酒店网站建设龙岗做网站的
  • 局网站信息内容建设 自查报告深圳软件公司名录
  • 电脑经销部开具网站建设费英德建设网站
  • 图片无版权网站广西响应式网站制作
  • 企业网站优化推广公司wordpress 优惠券主题
  • 郑州七彩网站建设wordpress淘客分销
  • 做一手房开什么网站比较好呢拓网手机版网站管理系统
  • 如何提高网站的搜索排名网站策划中规划预测怎们做
  • 焦作网站开发旅游网站怎么制作
  • 写作的网站有哪些天眼查询个人 企业查询
  • 网站开发网页制作教程用qq邮箱做网站
  • 免费建网站广告语购物有哪些平台
  • 做相同性质的网站算侵权吗哪里有软件定制开发公司
  • 建设网站的公司济南兴田德润o简介图片网页版游戏单机游戏
  • 做网站申请域名大概花费多少库存管理软件有哪些
  • 网站专题制作流程微博推广方法有哪些
  • 网站域名绑定破解竞价网站单页
  • 如何提升网站的收录量网页设计与网站建设标准教程
  • 电商网站怎样优化博乐建设工程信息网站
  • 怎样给网站做app免费网站建设总部
  • 做淘宝网站运营工作流程百度云盘资源
  • 宝塔网站搭建教程做职业测评的网站
  • 电子商务网站建设实践报告摘要禅城网站设计
  • 企业做淘宝网站需要多少钱唐山网站公司建设网站
  • 企业网站优化服务主要围绕什么上海建站模板系统
  • 企业手机网站建设个人网站申请空间
  • 照片网站模板个性化推荐网站开发源码
  • 网站网页设计专业公司学院网站建设需求分析目录