200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > java获取n个工作日后的日期 排除周末和节假日(顺延)

java获取n个工作日后的日期 排除周末和节假日(顺延)

时间:2019-02-10 09:27:46

相关推荐

java获取n个工作日后的日期  排除周末和节假日(顺延)

java获取n个工作日后的日期, 排除周末和节假日(顺延)

一.需求分析

需求描述

思路解析

二.以下为测试代码(测试时日期为-08-28)

三.应用

1.首先看一下我数据库中存放的holiday, 每一个节日都是一个范围(有开始日期和结束日期)

2.从数据库中查询holiday结果集, 遍历结果集将每一天holiday存到holidayList中

3.调用HolidayUtils中的getScheduleActiveDate传入正确的参数, 返回值即是排除节假日和周末后的指定n个工作日后的日期.(HolidayUtils如下)

代码备份

HolidayUtils.java

PersDateUtils.java

使用说明

一.需求分析

需求描述

工作需要获取n个工作日后的日期, 需要排除weekend和holiday, holiday存在数据库中, 存入的形式是一个节日有起始日期和截止日期(以下文中有关于节假日的表截图).

思路解析

大致为: 根据指定日期获取它tomorrow的日期, 判断tomorrow是否是周末和节假日, 如果不是则将tomorrow赋给today继续循环, 循环n次, 返回的today即是目标结果.

1.查询数据库中的holiday, 存入list(需要注意的是, holiday记录里startTime和endTime颠倒的脏数据要剔除, startTime在endTime之后的记录显然是脏数据)

2.判断today是否是周末

3.判断today是否是节假日

4.获取tomorrow的日期, 判断是否是weekend和holiday, 如果不是则将tomorrow赋给today继续循环, 循环n次, 返回today

(这里的today是指指定日期. 如:获取今天以后第10个工作日的日期 今天的日期就是指定日期).

工具类如何使用?

使用方法见博文末尾说明

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。