版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/qq_29694039/article/details/78130011
dateFormat.setLenient(false);
前台经常会用到字符串作为时间使用,那在进行Format时,设置这个属性false就会严格校验时间类型合法性
// 设置lenient为false. 否则SimpleDateFormat会比较宽松地验证日期,
//比如2017/02/29会被接受,并转换成2004/03/01,实际201702没有29号
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
dateFormat.setLenient(false);
try {
dateFormat.parse(startym);
}catch (ParseException e) {
e.printStackTrace();
throw new AppException("开始年月日格式不正确!<br>检查时间格式:"+startym);
}
try {
dateFormat.parse(endym);
}catch (ParseException e) {
e.printStackTrace();
throw new AppException("结束年月日格式不正确!<br>检查时间格式:"+endym);
}