public static boolean checkValidDate(Date date) throws IllegalDateFormatException {
        String message;

        if (date.getYear() <= 0) {
            message = "연도는 자연수만 입력 가능합니다!";
        } else if (date.getMonth() <= 0 || date.getMonth() > 12) {
            message = "1 ~ 12월까지의 날짜만 입력해주세요!";
        } else if (date.getDay() <= 0 || date.getDay() > 31) {
            message = "1 ~ 31일까지의 날짜만 입력해주세요!";
        } else if (date.getHour() < 0 || date.getHour() > 23) {
            message = "0 ~ 23시까지의 시간만 입력해주세요!";
        } else if (date.getMinute() < 0 || (date.getMinute() % 30 != 0)) {
            message = "30분 단위로 입력해주세요!";
        } else {
            return true;
        }

        throw new IllegalDateFormatException(message);
    }