java判断时间格式--格式必须为“YYYY-MM-dd”

createh52个月前 (02-01)技术教程11

java中的的日期格式为:

yyyy-MM-dd HH:mm:ss:代表将时间转换为24小时制,例: 2018-06-27 15:24:21

yyyy-MM-dd hh:mm:ss:代表将时间转换为12小时制,例: 2018-06-27 03:24:21

Oracle中的日期格式为:

yyyy-MM-dd HH24:mi:ss

yyyy-MM-dd HH:mi:ss,

分别代表oracle中的24小时制和12小时制


之所以 oracle和java不同,是因为oracle是不区分大小写的,所以java中根据大小写来代表24小时和12小时的表达式在oracle中就会出问题,oracle中将24小时的小时和分钟做了特殊处理.如上所示,在hh后面加上了24,将mm改为了mi,而一旦不注意取到的时间就会出问题!

/**
 * 判断时间格式 格式必须为“YYYY-MM-dd”
 * 2004-2-30 是无效的
 * 2003-2-29 是无效的
 * @param sDate
 * @return
 */
private static boolean isLegalDate(String sDate) {
    int legalLen = 10;
    if ((sDate == null) || (sDate.length() != legalLen)) {
        return false;
    }

    DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
    try {
        Date date = formatter.parse(sDate);
        return sDate.equals(formatter.format(date));
    } catch (Exception e) {
        return false;
    }
}

相关文章

大小写敏感容易忽视的注意点(大小写的作用)

DOS/Windows与众不同,默认不区分大小写,影响了批处理大小写行为。与Linux有别,大部分Unix like操作系统均是大小写敏感。macOS可以选择在制作分区时设定大小写敏感。Windows...

「日常记录」java 忽略字母大小写判断相等

equalsIgnoreCase方法不考虑大小写字符串与指定的对象比较...

Java标识符和关键字(java标识符关键字题)

标识符Java 中标识符是为方法、变量或其他用户定义项所定义的名称。标识符可以有一个或多个字符。在 Java 语言中,标识符的构成规则如下。 标识符由数字(0~9)和字母(A~Z 和 a~z)、美元符...

Java 极客眼中的 WebAssembly(java博客推荐)

作者 | EDOARDO VACCHI译者 | 盖磊策划 | 冬雨不少 Java 开发人员在面对 WebAssembly 一词时,首先会想到这是一种“浏览器技术”,之后可能会认为“还是归结为 JVM”...

JAVA | 第1期 - 关于泛型的内容回顾~

释义Java 泛型(generics)是 JDK 5 中引入的一个新特性,泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。什么是泛型,为什么要使用泛型?通俗地讲,泛型的本质...

Javadoc(文档注释)详解(java文档注释怎么注释)

Java 支持 3 种注释,分别是单行注释、多行注释和文档注释。文档注释以/**开头,并以*/结束,可以通过 Javadoc 生成 API 帮助文档,Java 帮助文档主要用来说明类、成员变量和方法的...