Skip to content

Pluggable Annotation Processing API 示例程序。

Notifications You must be signed in to change notification settings

LamSpace/data-plus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Data-Plus

Data-Plus 是 Pluggable Annotation Processing API 示例程序.


Pluggable Annotation Processing API 简介

该 API 是 JSR 269 提供的一台标准 API (Pluggable Annotation Processing) 来处理 Annotations,该 API 在编译期间而不是 运行期间处理注解, 相当于是编译器的一个插件, 因此称为插件式注解处理. 若注解处理器处理注解时产生了新的 Java 代码, 编译器会再调用一次注解处理器, 直到没有产生新代码为止. 每执行一次处理称为一个 round. 整个注解处理过程可以看做一个 round 序列. JSR 269 主要被设计称为针对 Tools 或者容器的 API.


使用步骤

  1. 自定义 Annotation Processor, 继承 javax.annotation.processing.AbstractProcessor.
  2. 自定义注解, 需要指定 RetentionPolicy.SOURCE.
  3. 自定义 Annotation Processor 中使用 javax.annotation.processing.SupportedAnnotationTypes 指定自定义注解.
  4. 自定义 Annotation Processor 使用 javax.annotation.processing.SupportedSourceVersion 指定编译版本以及编译参数.

【注意】: 该 API 只能用于生成新文件, 不能用于修改现有文件.


Data-Plus 说明

Data-Plus 基于 Pluggable Annotation Processing API, 实现类似于 Lombok 作用, 在程序编译之前向目标类注入特定的目标方法, 达到简化开发流程.
目前 Data-Plus 提供注解如下:

  • @Getter
  • @Setter
  • @NoArgsConstructor
  • @AllArgsConstructor
  • @ToString
  • @Hello

写在最后

Data-Plus 只是 Pluggable Annotation Processing API 的示例程序, 仅做学习记录与参考.


About

Pluggable Annotation Processing API 示例程序。

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages