zxpnet网站 zxpnet网站
首页
前端
后端服务器
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

zxpnet

一个爱学习的java开发攻城狮
首页
前端
后端服务器
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 大后端课程视频归档
  • 南航面试题
  • 并发编程

  • 性能调优

  • java8语法

  • lombok

  • 日志

  • 工具类

  • spring

  • mybatis

  • springboot

  • redis

  • zookeeper

  • springcloud

  • dubbo

  • netty

  • springsecurity

  • mq消息中间件

  • shiro

  • beetle

  • 模板引擎

  • jpa

  • 数据结构与算法

  • 数据库知识与设计

  • gradle

  • maven

  • bus

  • 定时任务

  • docker

  • centos

  • 加解密

  • biz业务

  • pigx项目

  • 开源项目

    • 开源项目汇总
    • guns和roses

    • vhr微人事开源项目分析
    • springboot-plus开源项目
    • mica组件集
      • mica-auto
        • 功能
        • 使用场景
        • 原理
        • 注解说明
    • eladmin
    • mall商城
    • Untitled
    • halo开源博客/cms系统
    • OneBlog开源博客系统
  • 品达通用权限项目-黑马

  • 货币交易项目coin-尚学堂

  • php

  • backend
  • 开源项目
shollin
2021-06-22
目录

mica组件集

  • mica-auto
    • 功能
    • 使用场景
    • 原理
    • 注解说明

# mica-auto

应用场景:

子项目要被加载,一般会写在/META-INF/spring.factories里面写明相关的类,用了mica-auto, 只需加上它的注解即可自动添加进去。

<!-- 添加到lombok之后 -->
<dependency>
    <groupId>net.dreamlu</groupId>
    <artifactId>mica-auto</artifactId>
    <version>2.1.0</version>
    <scope>provided</scope>
</dependency>

1
2
3
4
5
6
7
8

mica-auto 采用 Annotation Processor 技术,自动生成 java spi 和 Spring boot starter 的配置。

将子项目打包时,会自动将@Configuration注解的类,添加到spring.factories当中。

image-20210622111526580

# 功能

  1. 生成 spring.factories。
  2. 生成 spring-devtools.properties
  3. 生成 FeignClient 到 spring.factories 中,供 mica-cloud 中完成 Feign 自动化配置。
  4. 生成 java spi 配置,需要添加 @AutoService 注解。

# 使用场景

主要是用来避免 Spring boot 主项目包同 子项目或者子模块 包不一致,避免包扫描不到的问题。

  • spring boot starter利器,自动生成 spring.factories 配置。
  • 多模块项目中的子项目(不建议主项目添加 mica-auto)。

# 原理

扫描对应的注解,自动生成相应的配置,支持组合注解。

# 注解说明

注解 生成的 spring.factories 或 spi key
@AutoContextInitializer ApplicationContextInitializer
@AutoListener ApplicationListener
@AutoRunListener SpringApplicationRunListener
@AutoEnvPostProcessor EnvironmentPostProcessor
@AutoFailureAnalyzer FailureAnalyzer
@Component EnableAutoConfiguration
@AutoIgnore 忽略,不生成到 spring.factories
@AutoService 生成 java spi 配置

参考文档:

mica-auto 使用文档 | 如梦技术 (dreamlu.net) (opens new window)

Google Auto: https://github.com/google/auto

Spring 5 - spring-context-indexer: https://github.com/spring-projects/spring-framework/tree/main/spring-context-indexer

#mica
springboot-plus开源项目
eladmin

← springboot-plus开源项目 eladmin→

最近更新
01
国际象棋
09-15
02
成语
09-15
03
自然拼读
09-15
更多文章>
Theme by Vdoing | Copyright © 2019-2023 zxpnet | 粤ICP备14079330号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式