`
chenbj920
  • 浏览: 3611 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

数据验证

 
阅读更多
import java.util.Date;

import java.util.List;

public class ValidateUtil {

public static final String DATE_FORMAT_1 = "yyyy/MM/dd";
public static final String DATE_FORMAT_2 = "MM/dd/yyyy";
public static final String DATE_FORMAT_3 = "dd/MM/yyyy";
public static final String DATE_FORMAT_4 = "yyyy/MM/dd hh:mm:ss";
public static final String DATE_FORMAT_5 = "MM/dd/yyyy hh:mm:ss";
public static final String DATE_FORMAT_6 = "dd/MM/yyyy hh:mm:ss";
public static final String TIME_FORMAT_1 = "hh:mm:ss";
public static final String TIME_FORMAT_2 = "hh:mm";

public static boolean isEmail(String email) {
if (email == null || email.length() < 5)
return false;

String regex = "^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$";
return email.matches(regex);
}

public static boolean isEmpty(String val) {

return val == null || val.trim().length() == 0;
}

public static boolean isEqual(String val1,String val2) {
if(val1 != null){
return val1.equals(val2);
}else if(val2 != null){
return val2.equals(val1);
}else{
return true;
}
}

/**
* Rule: length: >= 8 <= 20 characters, at least one upper case character, and one digit.
*/
public static boolean checkPassword(String password) {
if (password == null || password.length() < 8 || password.length() > 20)
return false;

char [] pwd = password.trim().toCharArray();
        int c = 0;
        for (int i = 0; i < pwd.length; i++) {
            if ((int)pwd[i] >= 48 && (int)pwd[i] <= 57) {
                c++;
                break;
            }
        }
        if(c==0){
            return false;
        }
        c = 0;
        for (int i = 0; i < pwd.length; i++)
        {
            if ((int)pwd[i] >= 65 && (int)pwd[i] <= 90)
            {
                c++;
                break;
            }
        }
        if (c == 0)
        {
            return false;
        }
       
        return true;
}

public static boolean checkPassword(String password,String regex) {
if (password == null || password.length() <= 0)
return false;

return password.matches(regex);
}

public static boolean isAtoZ(String val) {

if (val == null || val.length() <= 0)
return false;

String regex = "^[A-Za-z]+$";
return val.matches(regex);
}

public static boolean isNumber(String val) {
if (val == null || val.length() <= 0)
return false;

String regex = "^-?([1-9]\\d*\\.?\\d*|0\\.?\\d*[1-9]\\d*|0?\\.?0+|0)$";
return val.matches(regex);

}

public static boolean isInteger(String val) { 

if (val == null || val.length() <= 0)
return false;

String regex = "^-?[1-9]\\d*$";
return val.matches(regex);
}

public static boolean isPositiveInteger(String val) {

if (val == null || val.length() <= 0)
return false;

String regex = "^[1-9]\\d*$";
return val.matches(regex);
}

public static boolean isDate(String date) {
if (date == null)
return false;

String regex = "^[0-9]{4}/(((0[13578]|1[02])/(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)/(0[1-9]|[12][0-9]|30))|(02/(0[1-9]|[1][0-9]|2[0-8])))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))/02/29)$";
if(date.matches(regex)){
return true;
}

regex = "^((((0[13578]|1[02])/(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)/(0[1-9]|[12][0-9]|30))|(02/(0[1-9]|[1][0-9]|[2][0-8])))/[0-9]{4})|(02/29/(([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00)))$";
if(date.matches(regex)){
return true;
}

regex = "^((((0[1-9]|[12][0-9]|3[01]))/(0[13578]|1[02])|((0[1-9]|[12][0-9]|30)/(0[469]|11))|((0[1-9]|[1][0-9]|[2][0-8]))/02)/[0-9]{4})|(29/02/(([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00)))$";
if(date.matches(regex)){
return true;
}

regex = "([0-9]{4}/(((0[13578]|1[02])/(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)/(0[1-9]|[12][0-9]|30))|(02/(0[1-9]|[1][0-9]|2[0-8])))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))/02/29)) ([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$";
if(date.matches(regex)){
return true;
}

regex = "^(((((0[13578]|1[02])/(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)/(0[1-9]|[12][0-9]|30))|(02/(0[1-9]|[1][0-9]|[2][0-8])))/[0-9]{4})|(02/29/(([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00)))) ([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$";
if(date.matches(regex)){
return true;
}

regex = "^(((((0[1-9]|[12][0-9]|3[01]))/(0[13578]|1[02])|((0[1-9]|[12][0-9]|30)/(0[469]|11))|((0[1-9]|[1][0-9]|[2][0-8]))/02)/[0-9]{4})|(29/02/(([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00)))) ([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$";
if(date.matches(regex)){
return true;
}

regex = "^([0-1][0-9]|2[0-3]):([0-5][0-9])$";
if(date.matches(regex)){
return true;
}

regex = "^([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$";
if(date.matches(regex)){
return true;
}

return false;
}

public static boolean isDate(String date, String format) {
String regex = "";
if(DATE_FORMAT_1.equals(format)){
regex = "^[0-9]{4}/(((0[13578]|1[02])/(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)/(0[1-9]|[12][0-9]|30))|(02/(0[1-9]|[1][0-9]|2[0-8])))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))/02/29)$";
}else if(DATE_FORMAT_2.equals(format)){
regex = "^((((0[13578]|1[02])/(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)/(0[1-9]|[12][0-9]|30))|(02/(0[1-9]|[1][0-9]|[2][0-8])))/[0-9]{4})|(02/29/(([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00)))$";
}else if(DATE_FORMAT_3.equals(format)){
regex = "^((((0[1-9]|[12][0-9]|3[01]))/(0[13578]|1[02])|((0[1-9]|[12][0-9]|30)/(0[469]|11))|((0[1-9]|[1][0-9]|[2][0-8]))/02)/[0-9]{4})|(29/02/(([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00)))$";

}else if(DATE_FORMAT_4.equals(format)){
regex = "([0-9]{4}/(((0[13578]|1[02])/(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)/(0[1-9]|[12][0-9]|30))|(02/(0[1-9]|[1][0-9]|2[0-8])))|((([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))/02/29)) ([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$";
}else if(DATE_FORMAT_5.equals(format)){
regex = "^(((((0[13578]|1[02])/(0[1-9]|[12][0-9]|3[01]))|((0[469]|11)/(0[1-9]|[12][0-9]|30))|(02/(0[1-9]|[1][0-9]|[2][0-8])))/[0-9]{4})|(02/29/(([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00)))) ([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$";
}else if(DATE_FORMAT_6.equals(format)){
regex = "^(((((0[1-9]|[12][0-9]|3[01]))/(0[13578]|1[02])|((0[1-9]|[12][0-9]|30)/(0[469]|11))|((0[1-9]|[1][0-9]|[2][0-8]))/02)/[0-9]{4})|(29/02/(([0-9]{2})(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00)))) ([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$";

}else if(TIME_FORMAT_1.equals(format)){
regex = "^([0-1][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$";
}else if(TIME_FORMAT_2.equals(format)){
regex = "^([0-1][0-9]|2[0-3]):([0-5][0-9])$";
}else{
return false;
}

return date.matches(regex);
}

public static int compareDate(Date date1, Date date2) throws NullPointerException{

if(date1 == null || date2 == null)
throw new NullPointerException();

return date1.compareTo(date2);
}

public static boolean minlength(String str, Integer compareVal) {
if (str == null)
return false;

return str.length() >= compareVal;
}

public static boolean maxlength(String str, Integer compareVal) {

if (str == null)
return false;

return str.length() <= compareVal;
}

public static boolean rangeLength(String str, Integer min, Integer max) {
if (str == null)
return false;

return str.length() >= min && str.length() <= max;
}

public static boolean rangeValue(int val, int min, int max) {

return val >= min && val <= max;
}

public static boolean rangeValue(double val, double min, double max) {
return val >= min && val <= max;
}

public static boolean rangeValue(char chars, char min, char max) {

return chars >= min && chars <= max;
}

public static boolean isExist(String val,String [] source) {

if(source == null || source.length == 0)
return false;

for(String str : source){
if(str != null && str.equals(val)){
return true;
}
}

return false;
}

public static boolean isExist(String val,List<String> source) {

if(source == null || source.size() == 0)
return false;

for(String str : source){
if(str != null && str.equals(val)){
return true;
}
}

return false;
}
}
分享到:
评论

相关推荐

    Python+PySide6开发Excel数据校验工具源代码.zip

    在进行数据分析或者数据挖掘、机器学习、深度学习之时,数据的正确性十分重要,因此在数据分析之前,进行数据正确性校验是十分必要的,基于此,本文实现了一款批量数据校验工具,可以完成:身份证校验、座机电话校验...

    springmvc数据验证jar包

    在Java Web开发中,Spring MVC框架提供了一种优雅的方式来处理控制器方法中的数据验证。这个"springmvc数据验证jar包"正是为了实现这一功能而必备的组件。它包含了多个关键库,如Hibernate Validator、JBoss Logging...

    Java 使用poi导入excel 并使用xml做数据验证

    Excel中的数据验证可以通过设置数据验证规则来实现,这些规则通常存储在Excel文件的`.xlsx`包中的`sharedStrings.xml`和`workbook.xml`等文件中。在Java中,我们可以使用`DataValidationHelper`和`...

    WPF前台数据验证(红框)

    WPF前台数据验证(红框)(包括3.5和4.0两个版本) WPF 显示验证错误的默认方式是在控件周围绘制红色边框。通常需要对此方法进行自定义,以通过其他方式来显示错误。而且,默认情况下不会显示与验证错误关联的错误...

    各种数据输入的校验,数据校验,比较全

    在C#中,可以创建自定义数据注解或数据验证规则,将这些校验方法整合到实体模型中,以实现更强大的数据校验功能。例如,使用`[Required]`、`[StringLength]`、`[RegularExpression]`等数据注解,结合`ModelState.Is...

    struts2 简单数据校验

    这篇博客“Struts2 简单数据校验”可能详细介绍了如何在Struts2框架中实现对用户输入的有效性验证。 数据校验是任何Web应用程序中的核心部分,它涉及到多个方面,如必填字段、数据类型检查、长度限制、格式验证等。...

    Struts 2 数据校验功能及校验问题的解决方案

    在Struts 2中,数据校验是实现业务逻辑的重要组成部分,确保输入的数据符合预设规则,从而提高应用程序的稳定性和安全性。数据校验功能是通过Struts 2的ActionSupport类和其他相关组件来实现的。 首先,...

    导入Excel到数据库的完整案例,带数据校验/事务回滚

    在读取Excel数据后,应根据业务规则进行验证,例如检查数据类型、长度、格式等。可以定义一系列校验规则,并使用循环结构逐一检查每个字段。对于不符合规则的数据,可以选择忽略、警告或者抛出异常。 数据库事务...

    页面的数据校验JS和HTML

    页面数据校验是Web应用程序中的一个关键环节,它有助于确保用户提交的数据符合预期的格式、类型和范围,从而避免了后续处理阶段可能出现的问题。例如,如果一个表单字段预期接收的是电子邮件地址,那么通过前端校验...

    数据校验的一般原理及应用

    3. **接收与验证**:接收方收到数据后,使用同样的生成多项式对数据进行CRC校验。如果校验结果为零,则认为数据无误;反之,则认为数据传输中出现了错误。 4. **错误处理**:如果检测到错误,可以通过反馈纠错方式...

    Delphi下实现数据校验

    摘要:介绍了数据校验的基本知识。对Adler-32算法、CRC-32算法、MD5算法、SHA-1算法、SHA-224算法、SHA-256算法、SHA-384算法、SHA-512算法、SHA-512/224算法和SHA-512/256算法进行了逐一的介绍,并对这些算法的优化...

    数据校验框架在hybris中的使用

    本文将详细介绍如何在Hybris中利用数据校验框架进行有效的数据验证。 1. 背景 在传统的开发方式中,数据校验通常通过编写if语句来实现,这不仅增加了代码量,而且难以维护。在接口开发中,针对各种请求数据的格式...

    MySQL主从数据校验工具

    MySQL主从数据校验工具是数据库管理中一个关键的组件,尤其在分布式系统或高可用性设置中,如主从复制架构。这类工具的主要目的是确保主数据库与从数据库之间的数据一致性,防止因网络延迟、错误同步或其他问题导致...

    springmvc数据验证

    在Spring MVC中,数据验证是确保输入数据正确性和安全性的关键环节。 数据验证是任何应用程序中不可或缺的部分,它帮助我们防止非法或无效的数据进入系统,从而保护系统免受潜在的攻击。在Spring MVC中,我们可以...

    数据校验助手[工控通讯版]支持不可见字符 CRC16 LRC 校验 绿色免费.rar

    数据校验是IT行业中至关重要的一个环节,尤其是在工控通讯领域。工控通讯版的数据校验助手是一款专门针对工业控制通信设计的工具,它具备处理不可见字符、CRC16和LRC等多种校验方式,确保了数据在传输过程中的准确性...

    Excel 数据校验项目的设计分享

    此外,还可以通过数据验证规则实现复杂的条件校验,如必须大于某个值或小于另一个值,或者参照其他单元格的数据。这些规则可以应用到单个单元格,也可以扩展到整个表格,确保数据的完整性。 在更高级的应用中,我们...

    struts2 数据校验

    Struts2提供了强大的数据验证框架,使得开发者能够方便地实现客户端和服务器端的数据验证。下面我们将深入探讨Struts2数据校验的相关知识点。 一、Struts2数据校验概述 Struts2的数据验证分为两种类型:客户端验证...

    WPF使用IDataErrorInfo进行数据校验

    `IDataErrorInfo`接口是WPF提供的一种实现自定义数据验证规则的方法。下面我们将深入探讨如何使用`IDataErrorInfo`来进行数据校验。 首先,让我们理解`IDataErrorInfo`接口。这个接口包含两个成员:`string Error`...

    批量导入Excel数据到数据库,带数据校验/事务回滚

    数据校验是保证数据质量的关键步骤,可以使用各种验证规则。例如,可以编写自定义验证函数,针对每个字段进行特定的检查,或者利用.NET的`Validator`类进行更复杂的业务逻辑验证。 总结来说,批量导入Excel数据到...

    java解析excel并做数据有效性校验

    在Excel中,可以通过设置数据验证规则实现。在Java中,我们可以使用Apache POI的`DataValidationHelper`和`DataValidationConstraint`类来创建和应用这些规则。 例如,检查手机号码的代码: ```java ...

Global site tag (gtag.js) - Google Analytics