• JSR 303 以及 拦截器


    前言

    上一篇文章分享了,上传和下载。本片文章将分享的内容是 JSR303 以及 拦截器


    一、JSR303

            JSR-303 是 JAVA EE 6 中的一项子规范,叫做 Bean Validation,官方参考实现是Hibernate Validator

            

            简单的说,JSR-303就是用来做表单验证的

    我们之前用jsjQuery做表单验证,JS属于前端的脚本验证(只作用于客户端的浏览器中,可以被屏蔽)

    JSR303属于服务端验证

            1、导入pom

    1. <dependency>
    2. <groupId>org.hibernategroupId>
    3. <artifactId>hibernate-validatorartifactId>
    4. <version>6.0.7.Finalversion>
    5. dependency>

            2、Clazz

    1. package com.zhw.model;
    2. import javax.validation.constraints.NotBlank;
    3. import javax.validation.constraints.NotNull;
    4. /**
    5. * @NotNull :作用于基本数据类型
    6. * @NotEmpty 作用于集合
    7. * @NotBlank 作用于字符串
    8. */
    9. public class Clazz {
    10. @NotNull(message = "班级编号不能为空")
    11. protected Integer cid;
    12. @NotBlank(message = "班级名不能为空")
    13. protected String cname;
    14. @NotBlank(message = "班级教员老师不能为空")
    15. protected String cteacher;
    16. protected String pic;
    17. public Clazz(Integer cid, String cname, String cteacher, String pic) {
    18. this.cid = cid;
    19. this.cname = cname;
    20. this.cteacher = cteacher;
    21. this.pic = pic;
    22. }
    23. public Clazz() {
    24. super();
    25. }
    26. public Integer getCid() {
    27. return cid;
    28. }
    29. public void setCid(Integer cid) {
    30. this.cid = cid;
    31. }
    32. public String getCname() {
    33. return cname;
    34. }
    35. public void setCname(String cname) {
    36. this.cname = cname;
    37. }
    38. public String getCteacher() {
    39. return cteacher;
    40. }
    41. public void setCteacher(String cteacher) {
    42. this.cteacher = cteacher;
    43. }
    44. public String getPic() {
    45. return pic;
    46. }
    47. public void setPic(String pic) {
    48. this.pic = pic;
    49. }
    50. }

            3、ClazzController

    1. package com.zhw.web;
    2. import com.zhw.biz.ClazzBiz;
    3. import com.zhw.model.Clazz;
    4. import com.zhw.model.dto.ClazzDto;
    5. import com.zhw.util.PageBean;
    6. import org.apache.commons.io.FileUtils;
    7. import org.springframework.beans.factory.annotation.Autowired;
    8. import org.springframework.http.HttpHeaders;
    9. import org.springframework.http.HttpStatus;
    10. import org.springframework.http.MediaType;
    11. import org.springframework.http.ResponseEntity;
    12. import org.springframework.stereotype.Controller;
    13. import org.springframework.validation.BindingResult;
    14. import org.springframework.validation.FieldError;
    15. import org.springframework.validation.annotation.Validated;
    16. import org.springframework.web.bind.annotation.RequestMapping;
    17. import org.springframework.web.multipart.MultipartFile;
    18. import
  • 相关阅读:
    苹果带飞了UWB技术,UWB推动智能车钥匙的发展
    Spark和Hbase环境变量冲突解决办法
    Feign 调用出现异常:feign.FeignException: status 401 reading xxx#xxx(xxx)
    js 滚动鼠标滑轮放大缩小图片
    【电商】管理后台篇之安全、菜单、通知管理
    【QT开发(8)】QT 中使用tensorrt
    存储优化知识复习三详细版解析
    CRM是什么?CRM管理系统主要功能,作用,特点分别有哪些?
    基于四叉树的图像压缩问题
    水平居中元素
  • 原文地址:https://blog.csdn.net/qq_62331938/article/details/126431399