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

网站伪静态小程序开发公司推荐

网站伪静态,小程序开发公司推荐,wordpress获取文章,千博网站后台文章目录 引言扩展点讲述花式扩展之自动配置类花式扩展之实现接口实现方式样例 花式扩展之自定义starterImport方式SpringFactories方式 总结鸣谢 引言 Spring Boot是一个高度可定制的框架#xff0c;旨在帮助开发者快速创建、配置和管理他们的应用程序 扩展点讲述 Spring Bo… 文章目录 引言扩展点讲述花式扩展之自动配置类花式扩展之实现接口实现方式样例 花式扩展之自定义starterImport方式SpringFactories方式 总结鸣谢 引言 Spring Boot是一个高度可定制的框架旨在帮助开发者快速创建、配置和管理他们的应用程序 扩展点讲述 Spring Boot的扩展点主要在于它允许开发者自定义和扩展其功能。例如你可以通过创建自定义的自动配置类来覆盖或添加新的自动配置或者通过实现Spring Boot的ApplicationContextAware或CommandLineRunner等接口来添加自定义的应用程序逻辑此外你还可以通过创建自定义的starter来封装和提供特定的依赖项集合。下面我将为大家介绍这三类自定义扩展的基本实现思路或案例 花式扩展之自动配置类 创建一个配置类并在类上添加 Configuration 注解。在该配置类中创建需要注册的 Bean并使用 Bean 注解标注该方法。如果需要配置属性可以创建一个配置属性类并在类上添加 ConfigurationProperties 注解。该注解的 prefix 属性指定了配置属性的前缀。在配置类中使用 EnableConfigurationProperties 注解来启用该配置属性类。如果需要条件化地注册 Bean可以使用 Conditional 注解来指定一个条件。如果需要指定一个 Bean 只在一个特定的 profile 处于激活状态时才会被注册可以在 Bean 的定义方法上添加 Profile 注解并指定需要激活的 profile。如果需要自动装配 Bean 依赖可以在属性或 setter 方法上添加 Autowired 注解。如果需要注入具有指定名称的 Bean可以在属性上添加 Resource 注解并指定需要注入的 Bean 的名称。 花式扩展之实现接口 实现方式 ApplicationContextInitializer用于自定义应用程序上下文的初始化过程。SpringBootApplicationProcessor用于自定义Spring Boot应用程序的配置。通过实现该接口并使用自定义逻辑您可以修改Spring Boot应用程序的配置类。EnvironmentPostProcessor用于自定义Spring环境的初始化和配置过程。通过实现该接口您可以定义一个类该类将在Spring环境创建之前或创建过程中被调用允许您对环境变量的设置、配置文件的加载等进行自定义或修改。ResourceLoaderAware提供对ResourceLoader的引用让Bean可以访问到资源加载器ApplicationContextAware提供ApplicationContext的引用让Bean可以访问到应用程序上下文。ApplicationArguments用于获取应用程序的命令行参数BeanNameGenerator自定义Bean的名称生成策略。BeanDefinitionRegistryPostProcessor允许在BeanDefinitionRegistry中注册所有的Bean之前执行一些自定义处理。BeanPostProcessor允许在Bean的生命周期中进行一些自定义处理比如自动装配和后处理。BeanFactoryPostProcessor允许在BeanFactory初始化之前执行一些自定义处理比如改变Bean的定义或替换其他Bean。EnvironmentAware提供对SpringEnvironment的引用让Bean可以访问到应用程序的环境信息。Initializer用于在Bean的生命周期开始时执行一些自定义操作。ApplicationListener监听ApplicationEvent的发布用于响应应用程序级别的事件。MessageSourceAware提供对MessageSource的引用让Bean可以访问到国际化消息。BeanFactoryAware提供对BeanFactory的引用让Bean可以访问到Bean工厂。ApplicationContextAware提供对ApplicationContext的引用让Bean可以访问到应用程序上下文。ServletContextAware提供对ServletContext的引用让Bean可以访问到Web应用程序的上下文。BeanDestroyedHandler在Bean的生命周期结束时执行一些自定义操作。Lifecycle定义了Bean的生命周期接口允许开发者在关键的生命周期方法如初始化、销毁等上执行一些自定义操作。CustomEditorConfigurer允许定义自定义属性编辑器用于将属性类型转换为适合的编辑器。ResourcePatternResolver用于解析资源路径以便找到指定的资源。BeanDefinitionReader用于读取Bean定义信息包括XML和Java配置类等。BeanDefinitionRegistry用于管理Bean定义的注册和解析。BeanDefinitionDecoder用于解码Bean定义信息将其转换为可操作的Bean对象。BeanDefinitionDocumentReader用于读取XML配置文件中的Bean定义信息。BeanDefinitionParser用于解析特定类型的配置文件如XML或Java类。BeanDefinitionHolder包含Bean定义和其相关的名称、别名等信息。BeanDefinitionVisitor用于访问和操作Bean定义信息。BeanDefinitionReaderListener监听Bean定义读取事件用于在读取过程中执行一些自定义操作。BeanDefinitionRegistryListener监听Bean定义注册事件用于在注册过程中执行一些自定义操作。BeanDefinitionParserDelegate提供了一些辅助方法来帮助解析和校验Bean定义信息。BeanDefinitionValidationVisitor用于校验Bean定义的合法性。BeanNameGeneratorHolder包含一个BeanNameGenerator和一个BeanNameGeneratorDelegate。BeanFactoryInitializerAdapter允许通过BeanFactory实现BeanFactoryInitializr接口的功能。LifeCycleProcessor用于在Bean的生命周期中执行自定义操作比如在Bean的生命周期事件发生时执行特定的逻辑。CommandLineRunner用于在应用程序启动后执行自定义的命令行逻辑。通过实现该接口您可以定义一个类在该类的run方法中编写自定义逻辑以便在应用程序启动后执行特定的操作。ApplicationRunner与CommandLineRunner类似用于在应用程序启动后执行自定义逻辑。与CommandLineRunner不同的是ApplicationRunner更适用于复杂的命令行参数处理和输出结果的处理。WebMvcConfigurer用于自定义Spring MVC的配置。通过实现该接口并重写addConventions方法您可以自定义Spring MVC的约定比如自定义控制器路径、异常处理等。AsyncConfigurer用于自定义异步方法的配置。通过实现该接口并重写getAsyncExecutor方法您可以自定义异步执行的线程池配置比如线程池大小、线程池类型等。 样例 SpringBootApplication Slf4j public class J4nJspApplication implements ApplicationContextAware , BeanNameGenerator , BeanDefinitionRegistryPostProcessor, BeanPostProcessor, BeanFactoryPostProcessor , EnvironmentAware, CommandLineRunner {public static void main(String[] args) {SpringApplication.run(J4nJspApplication.class, args);}Overridepublic void setApplicationContext(ApplicationContext applicationContext) throws BeansException {log.info(获取上下文进行操作);}Overridepublic String generateBeanName(BeanDefinition definition, BeanDefinitionRegistry registry) {log.info(我可以改变bean的名称);return null;}Overridepublic void postProcessBeanDefinitionRegistry(BeanDefinitionRegistry registry) throws BeansException {log.info(我可以获取容器并修改bean或添加bean);}Overridepublic void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException {log.info(提供了bean definition的解析和注册功能可以解析配置文件中定义的Bean只是我的功能之一而已);}Overridepublic void setEnvironment(Environment environment) {log.info(环境变量{}, JSONUtil.toJsonStr(environment));}Overridepublic void run(String... args) throws Exception {log.info(我可以在项目启动后执行一些操作);} }花式扩展之自定义starter Import方式 Target(ElementType.TYPE) Retention(RetentionPolicy.RUNTIME) Documented Inherited Import(AutoConfigurationxxxx.class) public interface EnableAutoConfiguration {}AutoConfigurationxxxx implements BeanFactoryAware, EnvironmentAware, Ordered ...启动类标记EnableAutoConfiguration SpringFactories方式 新建文件 resources/META-INFO/spring.factories文件配置 org.springframework.boot.autoconfigure.EnableAutoConfiguration你的配置类包路径.配置类,xxx,xxx,xxx ,多个配置类逗号分隔 总结 自动配置Spring 的自动配置功能可以帮助开发者快速搭建应用程序框架但是有时候默认的配置可能不能满足实际需求。通过自定义扩展开发者可以提供自己的自动配置代码覆盖默认配置以满足特定的应用需求。实现接口Spring 提供了许多接口和抽象类开发者可以通过实现这些接口来自定义扩展功能。通过实现接口开发者可以定制自己的业务逻辑增强 Spring 功能提高应用程序的灵活性和可维护性。startersSpring Boot 的 starters是 Spring 提供的一种快速启动项目的方式它提供了一些常用的依赖库使得开发者在启动项目时不需要手动添加这些依赖。通过自定义扩展开发者可以添加自己的 starters提供更多的功能和库支持使得其他开发者能够更方便地使用自己的项目。 鸣谢 非常感谢你从头到尾阅读了这篇文章希望其中的内容对你有所启发和帮助。如果你还有其他问题或需要进一步的了解欢迎随时关注我的动态并留言最后可以给作者点个关注和小赞赞嘛谢谢觉得有收藏价值可以进行收藏
http://www.w-s-a.com/news/818169/

相关文章:

  • 网站域名备案号查询网页设计实验报告总结模板
  • 什么软件 做短视频网站好大型论坛网站建设
  • 视频网站用什么cms网络运营与维护主要做什么
  • 设计网站主页要多少钱赣州制作网站百度
  • 什么叫高端网站定制网站收录大幅度下降
  • 汝城县网站建设公司aspx网站实例
  • 专业微网站营销diywap手机微网站内容管理系统
  • 盗版做的最好的网站温州logo设计公司
  • 网站建设 中山南充微网站建设
  • 企业网站更新什么内容免费设计软件下载
  • 夏天做哪些网站能致富做网站怎么每天更新内容
  • 个人网站的设计与开发网站建设流程中哪些部分比较重要
  • 招聘网站如何建设中国计算机网络公司排名
  • 工信部网站备案规定厦门在线制作网站
  • 商丘网站公司智联招聘手机app下载
  • 江西专业南昌网站建设中国专业的网站建设
  • 物流企业网站建设方案招标网站有哪些
  • 网站建设服务中企动力建筑工程网络进度计划备注填写范例
  • 电子商务网站开发与建设试卷php网站开发专业
  • 运城网站制作路90江苏省网站备案系统
  • 唐山做企业网站实体门店管理系统
  • 网站优化推广教程深圳网站建设世纪前线
  • 网站建设专家哪家好兰州网络推广执行
  • 广东住房和城乡建设厅网站王芃增加网站收录
  • 北京网站建设手机app电子商务网红营销的劣势
  • 网站 营销型wordpress获取4条文章标题
  • 浦东区建设工程监督网站建立全国统一的突发事件信息系统
  • 做网站需要基础吗重庆市造价信息网
  • 我要建设公司网站大连培训网站建设
  • 网站建设校长信箱设计方案小程序报价开发