当前位置: 首页 > 工具软件 > 节假日API > 使用案例 >

免费好用的节假日API——Java实现

宣冥夜
2023-12-01

前段日子项目中需要使用的国家规定的节假日,而且还 ** 是内网,例如说:

  1. 每日xxx;
  2. 周末xxx;
  3. 工作日xxx;
  4. 每隔多少天xxx,连续持续多少天xxx(周一周二停、周三到周日xxx。可以设置为,停2天,不停5天的循环,只要设置开始日期就可以);
  5. 手动增加某天或连续某几天xxx;
  6. 节假日或者非节假日xxx。

所以需要获取这些数据。其实获取这些数据的方式也很多:

  • 比如比较笨的方式:搜索引擎,手动整理
  • 使用一些免费开放的第三方节假日 API: 不稳定,虽然这些数据也不需要频繁的使用
  • 使用一些付费的第三方节假日 API:付费

所以说一下api或者付费的api只能不用了,而且节假日这个东西不能去计算,所以说只能自己去维护,*** ,** 需求 。

Api接口介绍

1. 获取节假日信息

接口描述:接口目前包含2021年至2022年的数据,2023年的数据预计在2022年10月-12月更新

(1)只传年份或年月会返回当年或当年月的所有的节假日

https://api.zhhc.cc/api/holiday/2022
https://api.zhhc.cc/api/holiday/202201

返回示例

{
  "code": 200,
  "msg": "success",
  "data": [
    {
      "date": "20220101",
      "dayOfWeek": 6,
      "weekend": true,
      "name": "元旦",
      "typeName": "节日",
      "startTime": 1640966400000,
      "endTime": 1641225600000,
      "type": 4,
      "desc": "元旦",
      "wage": 3
    }
  ],
  "timestamp": 1638619335395
}
(2)不传参数会根据系统时间返回当天是否是节假日或传具体年月日会返回当天是否是节假日

https://api.zhhc.cc/api/holiday/
https://api.zhhc.cc/api/holiday/20220101

返回示例

{
    "code": 200,
    "msg": "success",
    "data": {
        "date": "20220101",
        "dayOfWeek": 6,
        "weekend": true,
        "name": "元旦",
        "typeName": "节日",
        "startTime": 1640966400000,
        "endTime": 1641225600000,
        "type": 4,
        "desc": "元旦",
        "wage": 3
    },
    "timestamp": 1638623751305
}

返回数据结构

状态码 200

名称类型约束说明
» codeintegernone状态码
» msgstringnonemessage
» timestampintegernone时间
» dataarray|objectnone内容 年月格式为list 日格式为object
»» datestringnone时间
»» dayOfWeekintegernone一周中的第几天。值为 1 - 7,分别表示 周一 至 周日
»» weekendbooleannone是否是周末。周末:true,非周末:false
»» namestringnone节假日名称
»» typeNamestringnone类型名称
»» startTimeintegernone节假日开始时间
»» endTimeintegernone节假日结束时间
»» typeintegernone节假日类型: 1:工作日 2:调休 3:周末 4:节日
»» descstringnone节假日备注
»» wageintegernone薪资倍数,3表示是3倍工资
 类似资料: