java web项目中后台控制层对参数进行自定义验证 类 Pattern

Posted 我风依旧

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java web项目中后台控制层对参数进行自定义验证 类 Pattern相关的知识,希望对你有一定的参考价值。

Pattern pattern = Pattern.compile("/^([1-9]\d+元*|[0]{0,1})$/");//将给定的正则表达式编译到模式中
  if(!"".equals(mmshop.getOriginalPrice().trim())){          
    if(!pattern.matcher(mmshop.getOriginalPrice().trim()).matches()){ map.put("msg","请输入数字或xxx元,并确保格式正确"); map.put("code","500"); eturn map;   }   }

1.将给定的正则表达式编译到模式中

Pattern pattern = Pattern.compile("/^([1-9]\d+元*|[0]{0,1})$/");//将给定的正则表达式编译到模式中

2.增加去除参数的前后空白条件判断

if(!"".equals(mmshop.getOriginalPrice().trim())){ 
  .......  
}

3.a.创建匹配给定输入与此模式的匹配器 b.编译给定正则表达式并尝试将给定输入与其匹配

if(!pattern.matcher(mmshop.getOriginalPrice().trim()).matches()){
   map.put("msg","请输入数字或xxx元,并确保格式正确");
   map.put("code","500");
   return map;
}

 

4.推荐:快捷方式 编译给定正则表达式并尝试将给定输入与其匹配

/*
参数:
regex - 要编译的表达式
input - 要匹配的字符序列 
*/
Pattern.compile(regex).matcher(input).matches() 

例如:

if(!Pattern.compile("/^([1-9]\d+元*|[0]{0,1})$/").matcher(mmshop.getOriginalPrice().trim()).matches()){ 
map.put(
"msg","请输入数字或xxx元,并确保格式正确"); map.put("code","500");
  return map;
}

 





以上是关于java web项目中后台控制层对参数进行自定义验证 类 Pattern的主要内容,如果未能解决你的问题,请参考以下文章

自定义 Web API 控制器参数

Java项目:角色权限后台管理系统脚手架(java+springboot+freemark+jpa+maven+Mysql)

spring web(SpringBoot,SpringMVC)项目中返回自定义格式的JSON,不暴露不必要的字段

Java实战指南|玩转接口验签-你和高手只差俩个自定义注解

模型绑定不适用于 asp.net 核心 Web api 控制器操作方法中的 Stream 类型参数。(即使使用自定义流输入格式化程序)

Zabbix:项目实战之--自动发现nginx调度器及后端web服务集群自定义参数监控