代码网 logo
AI

springboot使用静态内部类作为入参

小开开2020-09-22 15:05:32333

有时候一个入参类仅仅只为了某一个controller使用的话那就没必要新家一个外部类,这是我们可以使用内部类来作为controller的参数
值得注意的是:
1.静态内部类同样可以new,支持@Data,@Builder,@NoArgsConstructor,@AllArgsConstructor等注解
2.其他类若想使用则需要通过外部类调用

java 复制代码
@RequestMapping("/blog")
@Api(value = "文章管理", tags = {"13.文章管理"})
public class BlogController {
    @Resource
    private BlogService blogService;

    @GetMapping("/select")
    @ApiOperation(value = "用户查询", notes = "用户查询")
    public PageInfo<BlogView> select(@RequestHeader(name = JwtTokenUtils.TOKEN_HEADER, required = false) String token,
                                     Param param) {
        PageMethod.startPage(param.getPageNum(), param.getPageSize());
        param.setTokenId(JwtTokenUtils.getUserId(token));
        List<BlogView> blogList = blogService.select(param);
        return new PageInfo(blogList);
    }


    @Data
    @Builder
    @NoArgsConstructor
    @AllArgsConstructor
    public static class Param {
        @ApiModelProperty("分页参数")
        private Integer pageNum = 1;
        @ApiModelProperty("分页参数")
        private Integer pageSize = 10;
        @ApiModelProperty("博客id")
        private String blogId;
        @ApiModelProperty("当前用户")
        private String tokenId;
        @ApiModelProperty("用户名")
        private String username;
        @ApiModelProperty("类型")
        private Integer type;
        @ApiModelProperty("搜索文本")
        private String text;
    }
}

在其它类的引用

复制代码
List<BlogView> select(BlogController.Param param);

广告