首页 > 其他分享 >spring boot @Pattern 数组字符串内

spring boot @Pattern 数组字符串内

时间:2023-07-22 16:05:16浏览次数:28  
标签:Spring 验证 spring boot Boot 步骤 Pattern 注解

Spring Boot @Pattern 数组字符串内实现步骤

简介

在Spring Boot中,@Pattern注解用于验证一个字符串是否符合指定的正则表达式。本文将介绍如何使用@Pattern注解来验证数组中每个字符串内的格式是否符合要求。

实现步骤

步骤 动作 代码示例
1 创建一个Spring Boot项目
2 在pom.xml文件中添加所需的依赖 xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</artifactId> </dependency>
3 创建一个POJO类来接收数组 java public class MyArray { @Pattern(regexp = "^[0-9]{2}-[A-Z]{3}$", message = "格式不正确") private String[] array; // getter and setter }
4 创建一个Controller类 java @RestController @Validated public class MyController { @PostMapping("/validate") public ResponseEntity<String> validateArray(@RequestBody MyArray myArray) { return ResponseEntity.ok("验证成功"); } }
5 运行项目并测试验证功能

代码说明

步骤2: 添加依赖

在pom.xml文件中,我们添加了spring-boot-starter-validation依赖。这个依赖包含了Spring Boot中用于验证的相关类和注解。

步骤3: 创建POJO类

我们创建了一个名为MyArray的POJO类,其中包含了一个array成员变量,并使用了@Pattern注解来指定该变量的验证规则。

  • @Pattern(regexp = "^[0-9]{2}-[A-Z]{3}$", message = "格式不正确"):这行代码使用了@Pattern注解来验证array成员变量的格式。其中,regexp属性指定了一个正则表达式,用于验证字符串是否符合指定的格式;message属性指定了当验证失败时返回的错误信息。

步骤4: 创建Controller类

我们创建了一个名为MyController的Controller类,并在其中添加了一个用于验证数组的POST接口。

  • @RestController:这个注解用于将类标记为一个控制器,使其能够接收HTTP请求并返回响应。
  • @Validated:这个注解用于启用验证功能。
  • @PostMapping("/validate"):这个注解用于将validateArray方法映射到/validate的POST请求上。
  • @RequestBody MyArray myArray:这行代码使用了@RequestBody注解来将请求体中的JSON数据自动映射到myArray参数上。

步骤5: 运行项目并测试验证功能

通过启动Spring Boot项目,并向/validate的POST接口发送包含数组的JSON数据,可以测试验证功能是否正常工作。

结论

通过以上步骤,我们可以实现使用Spring Boot的@Pattern注解来验证数组字符串内的格式。这个功能对于接收和处理前端传递的数据非常有用,并可以有效地保证数据的正确性。

标签:Spring,验证,spring,boot,Boot,步骤,Pattern,注解
From: https://blog.51cto.com/u_16175494/6816429

相关文章

  • spring batch 框架进行元数据管理表 mysql
    使用SpringBatch框架进行元数据管理表MySQL的实现1.简介在进行大规模数据处理时,SpringBatch框架是一个非常有用的工具。它提供了一个强大的批处理框架,可以轻松地处理大量的数据,并具备事务管理、监控、错误处理等功能。为了进行元数据管理,我们可以使用MySQL数据库来存储和管理S......
  • SpringCloud-Nacos配置中心实现原理(转)
    原文:https://blog.csdn.net/Zong_0915/article/details/113089265作者:Zong_0915 一.NacosConfig实现原理解析首先,NacosConfig针对配置的管理提供了4种操作):获取配置,从NacosConfigServer中读取配置。监听配置:订阅感兴趣的配置,当配置发生变化的时候可以收到一个事件。发布......
  • 【大联盟】20230626 集查并(dsu) 题解 AT_toyota2023spring_final_g 【Git Gud】
    【大联盟】20230626集查并(dsu)题解AT_toyota2023spring_final_g【GitGud】zyx/bx题目描述here题解由于这场出了T2、验了T3(顺序是反的),所以赛时一直在想这个题,不过很遗憾不会。相当有意思的题。考虑合并两个点\(x,y\)时,对以后产生的贡献为\(\max\{f_x,f_y\}\),\(f_x......
  • springboot三
    神器之整合通用Mapper的开发方法通用mapper的开发方法是做练习的神器,它是基于mybatis的一款MyBatis增强插件,可以提供一些常用增、删、改、查的操作,不需要重复写一些常用的sql。简化操作,精简代码,并且达到代码风格统一的目的。它的出现不是为了替代mybatis,而是让myb......
  • 【Spring】@RequestBody的实现原理
    @RequestBody注解可以用于POST请求接收请求体中的参数,使用方式如下:@ControllerpublicclassIndexController{@PostMapping(value="/submit",produces=MediaType.APPLICATION_JSON_VALUE)publicvoidsubmit(@RequestBodyUserInfouserInfo){Sy......
  • springboot二
    对springboot的一些补充在具体的应用开发中可以使用properties配置文件或者yaml配置文件两种一般建议开发中首选yml格式的文件,文件后缀可以是yml或者yaml。可以通过格式缩进的方式表达层次结构。解析yml格式的文件需要依赖snakeyaml,这个依赖由web-starter依赖引......
  • Spring Boot中内置Tomcat最大连接数、线程数与等待数 实践调优
    在SpringBoot框架中,我们使用最多的是Tomcat,这是SpringBoot默认的容器技术,而且是内嵌式的Tomcat。Tomcat是Apache基金下的一个轻量级的Servlet容器,支持Servlet和JSP。Tomcat服务器本身具有Web服务器的功能,可以作为独立的Web服务器来使用。一、SpringBoot应用......
  • springboot~redisson中使用lua脚本的问题
    起因事情是这样的,我在通过redission进行限流时,用到了在lua脚本里进行数值计算,而我在本地测试过程中,发现所有tonumber()方法时,返回值都是nil,这个原因最后找到了,是没有配置序列化的方式,出现错误提示如下:org.redisson.client.RedisException:ERRErrorrunningscript(calltof_......
  • springboot原理
    SpringApplication.run()执行流程:1.初始化监听器、自定义监听器。2.发布ApplicationStartedEvent事件(监听ApplicationStartedEvent方法:1、实现ApplicationStartedEvent  2、SpringApplication.addListener())3.装配参数和环境,确定是web环境还是非web环境。4.装配完环境后,......
  • spring事务传播属性与隔离级别 .
    一、Propagation(事务的传播属性)Propagation:key属性确定代理应该给哪个方法增加事务行为。这样的属性最重要的部份是传播行为。有以下选项可供使用:PROPAGATION_REQUIRED--支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。PROPAGATION_SUPPORTS--支持当前事务,如果......