SpringBoot实战篇(二)


Spring Boot 实战篇(二)

文章分类模块相关接口

  • 新增文章分类
  • 文章分类列表
  • 获取文章分类详情
  • 更新文章分类
  • 删除文章分类

新增文章分类


新增文章分类
  • 使用validation完成参数校验
  • 在service层需要为Category的createUser、createTime、updateTime属性赋值。

文章分类列表


新增文章分类

设置时间格式:在实体类属性前面加注解@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")

获取文章分类详情


新增文章分类

更新文章分类


更新文章分类

分组校验:把校验项进行归类分组,在完成不同的功能的时候,校验指定组中的校验项。

  • 定义分组:在实体类内部定义接口;
  • 定义校验项时指定归属的分组:通过groups属性指定;
  • 校验时指定要校验的分组:给@Validated注解的value属性赋值

定义分组

指定归属分组

指定要校验分组

定义校验项时如果某个校验项没有指定分组,默认属于Default分组;分组之间可以继承,A extends B 那么A中拥有B中所有的校验项。

删除文章分类

根据id删除文章,so easy!

文章管理模块相关接口

  • 新增文章
  • 文章列表(条件分页)
  • 获取文章详情
  • 更新文章
  • 删除文章

新增文章


新增文章

参数校验-自定义校验:已有的注解不能满足所有的校验需求,特殊的情况需要自定义校验(自定义校验注解)。

  • 自定义注解State:包含属性 message、groups、payload;
  • 自定义校验数据的类 StateValidation 实现 ConstraintValidator 接口;
  • 在需要校验的地方使用自定义注解。

文章列表(条件分页)


分页查询

文件上传


文件上传

文件上传
@RestController
public class FileUploadController {
    @PostMapping("/upload")
    public Result<String> upload(MultipartFile file) throws IOException {
        //把文件的内容存储到本地磁盘上
        String originalFilename = file.getOriginalFilename();
        //保证文件的名字是唯一的,从而防止文件覆盖
        String filename = UUID.randomUUID().toString() + originalFilename.substring(originalFilename.lastIndexOf("."));

        file.transferTo(new File("G:\\BOOK\\files\\"+filename));
        return Result.success("url访问地址...");
    }
}

文件上传

文章作者: nusqx
文章链接: https://nusqx.top
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 nusqx !
评论
  目录