Class DictScanner

java.lang.Object
io.github.xezzon.zeroweb.dict.DictScanner
All Implemented Interfaces:
org.springframework.boot.ApplicationRunner, org.springframework.context.annotation.ImportBeanDefinitionRegistrar

@Component public class DictScanner extends Object implements org.springframework.context.annotation.ImportBeanDefinitionRegistrar, org.springframework.boot.ApplicationRunner
字典扫描器,在 Bean 注册阶段扫描 classpath 下所有实现了 IDict 接口的枚举类,并在应用启动时将其注册到数据库中。
Author:
xezzon
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    registerBeanDefinitions(@NonNull org.springframework.core.type.AnnotationMetadata metadata, @NonNull org.springframework.beans.factory.support.BeanDefinitionRegistry registry)
    注册 Bean 定义。
    void
    run(@NonNull org.springframework.boot.ApplicationArguments args)
    应用程序启动阶段回调。

    Methods inherited from class Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.springframework.context.annotation.ImportBeanDefinitionRegistrar

    registerBeanDefinitions
  • Constructor Details

    • DictScanner

      public DictScanner()
  • Method Details

    • registerBeanDefinitions

      public void registerBeanDefinitions(@NonNull org.springframework.core.type.AnnotationMetadata metadata, @NonNull org.springframework.beans.factory.support.BeanDefinitionRegistry registry)

      注册 Bean 定义。

      扫描 classpath 下所有实现了 IDict 接口的枚举类, 并将其添加到待导入的字典列表中。

      Specified by:
      registerBeanDefinitions in interface org.springframework.context.annotation.ImportBeanDefinitionRegistrar
      Parameters:
      metadata - 注解元数据
      registry - Bean 定义注册器
    • run

      public void run(@NonNull org.springframework.boot.ApplicationArguments args)

      应用程序启动阶段回调。

      将之前扫描到的字典数据导入到数据库中。此操作不影响应用的正常启动流程。

      Specified by:
      run in interface org.springframework.boot.ApplicationRunner
      Parameters:
      args - 应用程序参数