• JSR303和拦截器


     

    目录

    一、JSR303的实现

    二、拦截器的初步认识

     拦截器链

    三、登录权限控制 


    一、JSR303的实现

     

    /* @NotNull :作用于基本数据类型
     *   @NotEmpty    作用于集合
     *   @NotBlank    作用于字符串
     */

     

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

     使用:

    .jsr303服务daunt校验

    1.pom导入

    2.在待校验的数据库对应的实体类属性打上校验标签

    非空校验

    3.在controller层方法上添加@Valid

    注释配合前面校验标签台添加Bindingresult次对象包含了所有,校验位通过的错误信息

    4可以将所有错误信息以集合方式保存并且传递到前台界面展示

     pom.xml

    
            
                org.hibernate
                hibernate-validator
                6.0.7.Final
            
    
    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <project xmlns="http://maven.apache.org/POM/4.0.0"
    3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    5. <modelVersion>4.0.0</modelVersion>
    6. <groupId>org.example</groupId>
    7. <artifactId>ssm3</artifactId>
    8. <version>1.0-SNAPSHOT</version>
    9. <properties>
    10. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    11. <maven.compiler.source>1.8</maven.compiler.source>
    12. <maven.compiler.target>1.8</maven.compiler.target>
    13. <maven.compiler.plugin.version>3.7.0</maven.compiler.plugin.version>
    14. <!--添加jar包依赖-->
    15. <!--1.spring 5.0.2.RELEASE相关-->
    16. <spring.version>5.0.2.RELEASE</spring.version>
    17. <!--2.mybatis相关-->
    18. <mybatis.version>3.4.5</mybatis.version>
    19. <!--mysql-->
    20. <mysql.version>5.1.44</mysql.version>
    21. <!--pagehelper分页jar依赖-->
    22. <pagehelper.version>5.1.2</pagehelper.version>
    23. <!--mybatis与spring集成jar依赖-->
    24. <mybatis.spring.version>1.3.1</mybatis.spring.version>
    25. <!--3.dbcp2连接池相关 druid-->
    26. <commons.dbcp2.version>2.1.1</commons.dbcp2.version>
    27. <commons.pool2.version>2.4.3</commons.pool2.version>
    28. <!--4.log日志相关-->
    29. <log4j2.version>2.9.1</log4j2.version>
    30. <!--5.其他-->
    31. <junit.version>4.12</junit.version>
    32. <servlet.version>4.0.0</servlet.version>
    33. <lombok.version>1.18.2</lombok.version>
    34. </properties>
    35. <dependencies>
    36. <!--1.spring相关-->
    37. <dependency>
    38. <groupId>org.springframework</groupId>
    39. <artifactId>spring-context</artifactId>
    40. <version>${spring.version}</version>
    41. </dependency>
    42. <dependency>
    43. <groupId>org.springframework</groupId>
    44. <artifactId>spring-orm</artifactId>
    45. <version>${spring.version}</version>
    46. </dependency>
    47. <dependency>
  • 相关阅读:
    C++ - 红黑树 介绍 和 实现
    vue下使用Echarts5绘制基础图表
    阿里云“玩转云上 StarRocks3.0 湖仓分析”,开启数据分析新范式
    YbtOJ「基础算法」第1章 递推算法
    中国油性油墨树脂行业供需态势与竞争趋势预测报告2022-2028年
    哪些人真的不适合学习数据分析,你中招了吗?
    vim常用命令
    (Carousel)解决:Element-ui 中 Carousel 走马灯的样式的修改问题
    「PAT乙级真题解析」Basic Level 1101 B是A的多少倍 (问题分析+完整步骤+伪代码描述+提交通过代码)
    css面试题及答案 【集合目录】
  • 原文地址:https://blog.csdn.net/qq_66924116/article/details/126430101