[需求总结] 关于 Java 判断是否为工作日、法定节假日
生活随笔
收集整理的這篇文章主要介紹了
[需求总结] 关于 Java 判断是否为工作日、法定节假日
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
應用場景
假設我有一個任務,任務一共需要 10 個小時就可以完成。任務開始時間是 2018-3-28,結束時間是 2018-4-8。
我們通過日歷可以知道,3-31 和 4-1 是周末,然后 4月份的 5、6、7號是清明節。所以 12 天之內,
有 5 天是放假的。意思就是說,我們在 7 天之內,完成 10 個小時的工作量。
所以,我們需要解決的是:在任務期間內,除掉 國家法定假期 和 周末 。 (下文將稱為特殊時間)
方案
- 獲取任務的時間段,判斷里面是否有節假日或者周末。(這個需要通過工具類來計算)
- 現在數據庫存好今年的國家法定日及周末。然后拿到任務時間段。通過比對時間來判斷是否有特殊時間及數目,最后減去即可。
選擇及實現
我選擇方案二。方案一效率比較低,計算量比較大。方案二比較容易實現。
偽思路及步驟
考慮問題
數據庫設計
| id | 索引 | Integer |
| create_by | 創建時間 | Date |
| create_date | 更新時間 | Date |
| del_flag | 是否刪除 | bool |
| remarks | 備注 | varchar(100) |
| update_by | 更新人 | Date |
| record_time? | 記錄時間 | Date |
| special_day | 特殊時間 | Date |
day_type | 時間類型(法定日,周末,法定日+周末) | String[] |
總結
以上是生活随笔為你收集整理的[需求总结] 关于 Java 判断是否为工作日、法定节假日的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信服务号模板消息推送
- 下一篇: Tomcat部署maven项目