JAVA结合业务数据判断指定日期是周几

以下代码结合了业务数据,如果直接判断日期可从if后截取:

	/**
     * @param today 传入日期(格式yyyy-MM-dd)
     * @return 1、工作日,2、休息日,3、节假日
     */
    @Override
    public Integer determineDateAttribute(Date today) {
        //初始化日期配置的视图对象,拼接检索的开始时间(当天0点)与结束时间(当天23点59分59秒)
        DateConfigVO selDateConfig = new DateConfigVO();
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
        System.out.println("传入的检索时间::_____________________" + simpleDateFormat.format(today));
        selDateConfig.setStartTimeStr(simpleDateFormat.format(today) + " 0:0:0");
        selDateConfig.setEndTimeStr(simpleDateFormat.format(today) + " 23:59:59");
        //以时间区间为检索条件返回查询结果
        DateConfig dateConfig = baseMapper.determineDateAttribute(selDateConfig);
        //如果在数据库中有检索结果,返回数据库中配置的日期类型
        if (Func.isNotEmpty(dateConfig) && Func.isNotEmpty(dateConfig.getDateType())) {
            System.out.println("dateConfig::" + dateConfig + "  type::" + dateConfig.getDateType());
            return dateConfig.getDateType();
        }
        //如果在数据库中未查询到配置内容,按周一到周五返回 1 (工作日),周末返回 2 (休息日)
        String[] weekDays = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
        Calendar cal = Calendar.getInstance();
        cal.setTime(today);
        int w = cal.get(Calendar.DAY_OF_WEEK) - 1;
        w = (Math.max(w, 0));
        System.out.println("今天是::" + weekDays[w]);
        if (w >= 1 && w <= 5) {
            return 1;
        } else {
            return 2;
        }
    }

你可能感兴趣的:(工作经验总结,java,开发语言)