介绍
rpc-apt用来在编译时使用生成feign,forest,dubbo rpc框架的接口代码。
注: 暂时不支持dubbo rpc 。
依赖库
名称 | 描述 |
---|---|
javapoet | |
auto-service | |
freemarker | |
hutool-all | |
javaparser-symbol-solver-core | |
javassist | |
guava |
快速开始
引入
xml
<dependency>
<groupId>io.github.zhanghongbin</groupId>
<artifactId>zebra-common-rpc-apt</artifactId>
</dependency>
在Controller的具体方法上使用@Rpc注解,生成rpc接口及相关类,@Rpc参数默认的类型为 FEIGN,如果想生成forest接口及相关类,只需要@Rpc类型参数设置为FOREST即可,只需要编译源码,即可在 target目录下生成标准的maven工程目录,可以直接把源码或工程发给使用者,也可以直接进行maven构建,提供对方jar文件或从远程仓库直接拉取。
示例:
java
@RequestMapping("/example")
public class ExampleController {
@GetMapping("/get")
@Rpc(RpcType.FOREST)
public UserInfoView get(@RequestParam("id") @NotNull Long id) {
return UserInfoView.builder().id(id).name("name").build();
}
}