`
chenbj920
  • 浏览: 3656 次
  • 性别: 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...

    WPF之ValidationRule数据校验

    `ValidationRule` 是WPF中实现数据验证的一种机制,它允许开发者定义自定义的校验规则来检查用户输入的数据。在本文中,我们将深入探讨`ValidationRule`的工作原理以及如何在WPF应用中实现数据校验。 ### 数据验证...

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

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

    PLC数据校验助手

    总的来说,这个PLC数据校验助手是一个针对工业自动化领域设计的实用工具,它能帮助工程师和技术人员在PLC和单片机通讯中有效地验证数据的准确性,从而提高系统的稳定性和可靠性。通过理解和使用这样的工具,可以提升...

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

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

    easyexcel+validation excel导入导出下载

    5. **数据校验**:Validation是Java中用于数据验证的框架,如使用JSR-303/JSR-349(Bean Validation)标准,我们可以为实体类的属性添加校验注解,如@NotNull、@Size、@Pattern等,然后在导入数据时,通过Validator...

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

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

    页面的数据校验JS和HTML

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

    JavaScript数据验证大全

    实际项目中使用的前台数据验证,包括年份日期验证,值类型,URL类型==判断

    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中,我们可以...

    struts2 数据校验

    总的来说,Struts2的数据校验功能是其强大之处,它简化了数据验证的过程,提高了代码的可读性和可维护性。通过注解和XML配置,开发者可以方便地定义和调整验证规则,确保应用数据的安全和正确性。在实际项目中,结合...

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

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

    WPF使用IDataErrorInfo进行数据校验

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

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

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

    数据校验的一个很好的程序

    它可能包含静态方法,用于简化数据验证过程,如批量验证或自定义验证逻辑。 2. `CompareValidator.cs`: ASP.NET中的`CompareValidator`控件用于比较两个输入控件的值或者输入控件的值与一个固定的值。它可以执行...

Global site tag (gtag.js) - Google Analytics