SpringBoot中的@ApiModelProperty注解

       @ApiModelProperty()注解用于方法、字段,表示对model属性的说明或者数据操作更改,以下是它的源码:


  // IntelliJ API Decompiler stub source generated from a class file
  // Implementation of methods is not available

package io.swagger.annotations;

@java.lang.annotation.Target({java.lang.annotation.ElementType.METHOD, java.lang.annotation.ElementType.FIELD})
@java.lang.annotation.Retention(java.lang.annotation.RetentionPolicy.RUNTIME)
public @interface ApiModelProperty {
    java.lang.String value() default "";

    java.lang.String name() default "";

    java.lang.String allowableValues() default "";

    java.lang.String access() default "";

    java.lang.String notes() default "";

    java.lang.String dataType() default "";

    boolean required() default false;

    int position() default 0;

    boolean hidden() default false;

    java.lang.String example() default "";

    /**
     * @deprecated
     */
    @java.lang.Deprecated
    boolean readOnly() default false;

    io.swagger.annotations.ApiModelProperty.AccessMode accessMode() default io.swagger.annotations.ApiModelProperty.AccessMode.AUTO;

    java.lang.String reference() default "";

    boolean allowEmptyValue() default false;

    io.swagger.annotations.Extension[] extensions() default {@io.swagger.annotations.Extension(properties = {@io.swagger.annotations.ExtensionProperty(name = "", value = "")})};

    static enum AccessMode {
        AUTO, READ_ONLY, READ_WRITE;

        private AccessMode() { /* compiled code */ }
    }
}

       主要字段说明:

value:字段说明,
name:重写属性名字,
dataType:重写属性类型,
required:是否必须,默认false,
example:举例,
hidden:隐藏。

       举个简单的例子:

@ApiModel(value="user", description="users")
public class UserVO implements Serializable{
	
    private static final long serialVersionUID = 1L;
	
     @ApiModelProperty(value="用户名", name="username", example="xzw")
     private String username;
	 
     @ApiModelProperty(value="状态", name="status", required=true)
      private Integer status;
      private String pwd;
      private String nName;
      private Integer flag;
 
      @ApiModelProperty(value="grade数组", hidden=true)
      private String[] grades;
      private List<String> gradeList;
}

猜你喜欢

转载自blog.csdn.net/gdkyxy2013/article/details/104773980