swagger 中@ApiImplicitParam()跟@ApiParam()两个注解的区别

发布于 2022-01-06 02:00:08 字数 55 浏览 827 评论 1

swagger 中@ApiImplicitParam()跟@ApiParam()两个注解的区别?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

野心澎湃 2022-01-07 02:59:14

首先我们看源码的注释部分:

ApiParam.java:
/**
 * Adds additional meta-data for operation parameters.
 * <p/>
 * This annotation can be used only in combination of JAX-RS 1.x/2.x annotations.
 */
ApiImplicitParam.java:
/**
 * Represents a single parameter in an API Operation.
 * <p/>
 * While {@link ApiParam} is bound to a JAX-RS parameter,
 * method or field, this allows you to manually define a parameter in a fine-tuned manner.
 * This is the only way to define parameters when using Servlets or other non-JAX-RS
 * environments.
 * <p/>
 * This annotation must be used as a value of {@link ApiImplicitParams}
 * in order to be parsed.
 *
 * @see ApiImplicitParams
 */

这就是说,@ApiParam和@ApiImplicitParam的功能是相同的,但是@ApiImplicitParam的适用范围更广。在非JAX-RS的场合(比如使用servlet提供HTTP接口),只能使用@ApiImplicitParam进行参数说明。我认为,这是因为接口并不显式展示入参的名称,所以没有地方去使用@ApiParam,只能在接口的方法声明下方写@ApiImplicitParam

 

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文