编程语言
首页 > 编程语言> > java 无侵入 接口文档 smart-doc

java 无侵入 接口文档 smart-doc

作者:互联网

1.配置smart-doc.json文件

{
  "serverUrl": "http://localhost:17150", //指定后端服务访问地址
  "outPath": "src/main/resources/static/doc", //指定文档的输出路径,生成到项目静态文件目录下,随项目启动可以查看
  "isStrict": false, //是否开启严格模式
  "allInOne": true, //是否将文档合并到一个文件中
  "createDebugPage": false, //是否创建可以测试的html页面
  "packageFilters": "com.smart.doc.*.controller.*", //controller包过滤
  "style":"xt256", //基于highlight.js的代码高设置
  //"projectName": "mall-tiny-smart-doc", //2.3.4开始,插件自动采用pom中的projectName作为默认填充, 因此使用插件时可以不配置
  "showAuthor":true, //是否显示接口作者名称
  "inlineEnum": true,//是否将枚举详情展示到参数表中。
  "dataDictionaries": [
    {
      "title": "http状态码字典", //数据字典的名称
      "enumClassName": "com.smart.doc.common.enums.HttpCodeEnum", //数据字典枚举类名称
      "codeField": "code", //数据字典字典码对应的字段名称
      "descField": "message" //数据字典对象的描述信息字典
    }
  ],
  "errorCodeDictionaries": [
    {
      "title": "title",
      "enumClassName": "com.smart.doc.common.enums.HttpCodeEnum", //错误码枚举类
      "codeField": "code", //错误码的code码字段名称
      "descField": "message" //错误码的描述信息对应的字段名
    }
  ]
  //"allInOneDocFileName":"index.html" //自定义设置输出文档名称--只有每个controller生成一个html文件是才使用
}

2.pom.xml配置plugin方式生成 。

<build>
    <plugins>
        <plugin>
            <groupId>com.github.shalousun</groupId>
            <artifactId>smart-doc-maven-plugin</artifactId>
            <version>2.3.4</version>
            <configuration>
                <!--指定smart-doc使用的配置文件路径-->
                <configFile>./src/main/resources/smart-doc.json</configFile>
                <!--指定项目名称-->
                <projectName>smartDoc</projectName>
            </configuration>
        </plugin>
    </plugins>
</build>

43.定义contrller

/**
 * Dat控制层
 */
@RestController
public class DatController {
    @Autowired
    private IDatService datService;

    /**
     * 获取所有Dat信息
     * @param commonRequest
     * @return
     */
    @PostMapping("/dat/list")
    @ResponseBody
    public CommonResult<CommonResultData<List<Dat>>> list(@RequestBody @Validated({DatVo.add.class,CommonRequest.request.class}) CommonRequest<DatVo> commonRequest){
        return CommonResult.success(commonRequest.getReqId(),datService.list(commonRequest.getData()));
    }
}

4.定义请求参数

@Data
public class DatVo extends BaseVo{
    /**
     * ID
     */
    @NotNull(message = "id不能为空,请检查id参数", groups = {edit.class, add.class})
    private Integer id;
    /**
     * 名称
     * @required---请求参数为必输项
     */
    @NotBlank(message = "名称输入有误,请检查name参数", groups = {edit.class, add.class})
    private String name;

    @Min(value = 1, message = "年龄有误!",groups = {edit.class, add.class})
    @Max(value = 120, message = "年龄有误!",groups = {edit.class, add.class})
    private Integer age;

    @Email(message = "邮箱有误!",groups = {add.class})
    private String email;
}

5.生成--maven-->smart-doc-->smart-doc:html 生成html内容

 6。运行访问

 

标签:java,doc,add,message,class,smart,字典
来源: https://blog.csdn.net/bish326/article/details/123631778