第一个webapi及swagger
2021-01-06 14:28
标签:ica array regex extends color global sdn col 参考 目的:实现api并生成swagger文档 引入swagger 在pom.xml添加swagger依赖 启用swagger 配置SwaggerConfiguration.java 新建文件,如下 开始处理控制器 建立如下结构 解释: service :具体业务实现 dto :模型 hello:接口实现 ihello:接口 代码如下: base: 没什么把set get 注释掉了 说实话写这个东西太烦人了,不像net 只写{get;set;}就可以了,没有意义,有没有办法不用写,答案是肯定的 度娘搜索 maven lombok 选择的这个,没其他原因,用的人多 看usages 复制到pom文件中 安装 lombok 插件 模型添加注解 @Data ok了,不用写get set了 ihello: hello: hellocontroller 好了,看下最终效果: 参考文档: 在此感谢以上文章作者,感谢公司同事支持! 第一个webapi及swagger 标签:ica array regex extends color global sdn col 参考 原文地址:https://www.cnblogs.com/fuyujian/p/13168697.html
#引入swagger
swagger:
enabled: true
@Configuration
@EnableSwagger2
public class SwaggerConfig {
/*@Value("${jwt.header}")
private String tokenHeader;
@Value("${jwt.token-start-with}")
private String tokenStartWith;*/
@Value("${swagger.enabled}")
private Boolean enabled;
@Value("${swagger2.basePackage:com.spingcloud.serviceconsumer.controller}")
private String swagger2BasePackage;
@Value("${swagger2.title:系统API文档}")
private String swagger2Title;
@Value("${swagger2.api.version:2.0}")
private String apiVersion;
// 定义分隔符
private static final String splitor = ",";
@Bean
@SuppressWarnings("all")
public Docket createRestApi() {
ParameterBuilder ticketPar = new ParameterBuilder();
List
@Data
public class base {
/*主键id*/
@ApiModelProperty("主键id")
@JsonProperty("id")
private Integer id;
/*public int getId(){
return id;
}
public void SetId(int id){
this.id=id;
}*/
}
helloDto:
//swagger 注释
@ApiModel("模型说明")
//lombok插件并引用包 省区get set 方法
/*@Data : 注解在类上, 为类提供读写属性, 此外还提供了 equals()、hashCode()、toString() 方法
@Getter/@Setter : 注解在类上, 为类提供读写属性
@ToString : 注解在类上, 为类提供 toString() 方法
@Slf4j : 注解在类上, 为类提供一个属性名为 log 的 log4j 的日志对象
@Log4j : 注解在类上, 为类提供一个属性名为 log 的 log4j 的日志对象*/
@Data
public class helloDto extends base implements Serializable {
/*姓名*/
@JsonProperty("Name")
@ApiModelProperty("姓名")
private String Name;
/*性别*/
@ApiModelProperty("性别")
@JsonProperty("Sex")
private Boolean Sex;
/*@JsonProperty("Name")
@ApiModelProperty("姓名")
public String getName(){
return this.Name;
}
public void setName(String Name){
this.Name=Name;
};
public Boolean getSex(){
return Sex;
}
public void setSex(Boolean Sex){
this.Sex=Sex;
}*/
}
public interface IHello {
/*获取所有*/
List
@Service
public class Hello implements IHello {
@Override
public List
@RestController
/*swagger注释*/
@Api(tags = "测试控制器")
@RequestMapping("/api/hello")
public class hellocontroller {
private final IHello ihello;
public hellocontroller(IHello ihello){
this.ihello=ihello;
}
@RequestMapping(method = RequestMethod.GET)
@ApiOperation("获取所有")
public List
@RequestParam @RequestBody @PathVariable 等参数绑定注解详解(转)
application.properties文件配置
@RequestMapping 用法详解之地址映射(转)
@Component, @Repository, @Service的区别