为了方便前端的开发,后端同学往往都需要写接口文档,而我们可以借助丝袜哥(Swagger)可以很方便的生成接口文档,同时借助本工具可以更详细的生成响应字段信息,或字段加密功能
publicclassDemoVOimplementsSerializable {
/** * 对需要加密或抹掉的字段使用 {@link Sealed} 注解 */@SealedprivateStringkey;
privateIntegercount;
publicStringgetKey() {
returnkey;
}
publicvoidsetKey(Stringkey) {
this.key = key;
}
publicIntegergetCount() {
returncount;
}
publicvoidsetCount(Integercount) {
this.count = count;
}
}@RestController@RequestMapping("/demo")
publicclassDemoControllerextendsBaseController {
privatestaticfinalDemoVODEMO_VO = newDemoVO();
static {
DEMO_VO.setCount(233);
DEMO_VO.setKey("secret key");
}
/** * 在 {@link BaseController} 类中封装了很多 `parseResult` 方法,同时也建议使用 parseResult 方法 */@GetMapping("/foo")
publicResponse<DemoVO> foo() {
// 最后一个参数表示是否对对象字段进行加密returnparseResult("success", "error", DEMO_VO, false);
}
@GetMapping("/bar")
publicResponse<DemoVO> bar() {
returnnewResponse<DemoVO>().setCode(200).setMsg("success").setData(DEMO_VO).encode();
}
}默认的字段加密器仅支持
md5sha1sha256三个加密方法,如果有使用其他加密方法的需求请继承FieldEncoder类并重写encodeField方法,然后在主类的main方法中调用BootConfig.setFieldEncoder