编程标准化随记

59 阅读1分钟

一、规范使用swagger

1、contoller部分

@RestController
@AllArgsConstructor
@RequestMapping("/api/v1/article")
@Api(tags = "文章接口")
public class ArticleHomeController {

    @Autowired
    private ApArticleService apArticleService;

    /**
     * 加载首页
     *
     * @param dto 首页文章数据传输对象
     * @return ResponseResult
     */
    @PostMapping("/load")
    @ApiOperation(value = "加载首页", notes = "根据传入的首页文章数据传输对象加载首页文章列表")
    public ResponseResult load(@RequestBody ArticleHomeDto dto) {
        return apArticleService.load(dto, ArticleConstants.LOADTYPE_LOAD_MORE);
    }
}

2、domain部分


package com.heima.model.article.dtos;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

@Data
@ApiModel("文章首页数据传输对象")
public class ArticleHomeDto {

    @ApiModelProperty("最大时间")
    private Date maxBehotTime;

    @ApiModelProperty("最小时间")
    private Date minBehotTime;

    @ApiModelProperty("分页size")
    private Integer size;

    @ApiModelProperty("频道ID")
    private String tag;
}

二、合理使用枚举

较为复杂情况:

package com.heima.model.common.enums;

public enum AppHttpCodeEnum {

    // 成功段固定为200
    SUCCESS(200,"操作成功"),
    // 登录段1~50
    NEED_LOGIN(1,"需要登录后操作"),
    LOGIN_PASSWORD_ERROR(2,"密码错误"),

    int code;
    String errorMessage;

    AppHttpCodeEnum(int code, String errorMessage){
        this.code = code;
        this.errorMessage = errorMessage;
    }
    public int getCode() {
        return code;
    }
    public String getErrorMessage() {
        return errorMessage;
    }
}

较为简单情况:

public enum EmailEnum {

    /**
     * 培训需求
     */
    TRAIN,
    /**
     * 招聘
     */
    RECRUIT,
    /**
     * 会展
     */
    EXHIBITION,

}

使用:如何使用

AppHttpCodeEnum success = AppHttpCodeEnum.SUCCESS;