package com.cn.baidu;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.httpclient.DefaultHttpMethodRetryHandler;
import org.apache.commons.httpclient.Header;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.methods.GetMethod;
import org.apache.commons.httpclient.params.HttpMethodParams;
public class Holiday
{
/**
* @param urlAll :请求接口
* @param httpArg :参数
* @return 返回结果
*/
public static String request(String httpArg)
{
String httpUrl = "http://www.easybots.cn/api/holiday.php";
// String httpUrl = "http://apis.baidu.com/xiaogg/holiday/holiday";
HttpClient httpClient = new HttpClient();
GetMethod method = new GetMethod(httpUrl+"?"+httpArg);
String response = "";
try
{
// 需要添加的header数据
List<Header> headers = new ArrayList<Header>();
Header header = new Header();
header.setName("apikey");
header.setValue("7bd4e99adcc28e337cea79191fef87fc");
headers.add(header);
httpClient.getHostConfiguration().getParams().setParameter("http.default-headers", headers);
method.getParams().setParameter(HttpMethodParams.RETRY_HANDLER, new DefaultHttpMethodRetryHandler());
int statusCode = httpClient.executeMethod(method);
if (statusCode == HttpStatus.SC_OK)
{
// 获取到的回执信息
InputStream resStream = method.getResponseBodyAsStream();
BufferedReader br = new BufferedReader(new InputStreamReader(resStream));
StringBuffer resBuffer = new StringBuffer();
String resTemp = "";
while ((resTemp = br.readLine()) != null)
{
resBuffer.append(resTemp);
}
response = resBuffer.toString();
}
}
catch (HttpException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
finally
{
method.releaseConnection();
}
return response;
}
public static void main(String[] args)
{
// 工作日对应结果为 0, 休息日对应结果为 1, 节假日对应的结果为 2
String httpArg = "d="+"2016-11-20".replaceAll("-", "");
String jsonResult = request(httpArg);
System.out.println(jsonResult);
}
}
分享到:
相关推荐
获取当年中国的法定节假日和工作日等信息。 如下是当前包含的功能: * 01-给定日期,判断是否是休息日(包含法定节假日和不需要补班的周末)。 * 02-给定日期,判断是否是工作日(非休息日)。 * 03-获取一年中总共...
函数内部首先将输入的日期字符串转换为 `Date` 对象,然后通过 `$.inArray()` 函数检查该日期是否在节假日或调休日的数组中。`$.inArray()` 是jQuery库提供的函数,用于在数组中查找指定元素的索引,如果找到则返回...
在IT行业中,开发一个能够判断日期是否为节假日的功能是一项常见的需求,特别是在开发日历应用、时间管理工具或者自动化脚本时。本项目标题为“判断日期是否是节假日(包含JSON依赖的jar包)”,它提供了这样的功能...
Java 节假日算法 Java 节假日算法是指在给定的日期范围内,计算包含假期的天数的算法。在这个算法中,我们可以看到三个类分别是 DateToDate、Vacation 和 WorkDate。下面我们将详细解释这个算法的实现过程。 首先...
确保每个节假日作为一个记录存储,包含日期、节日名称和是否为法定假日等信息。 6. **测试**:`testHoliday`可能是用于测试这个工具类的文件,通常包含单元测试代码,确保工具类能够正确生成节假日对照表并保存到...
* 判断今天是否节假日 * @param date 今天日期 * @return 返回值 true:今天是工作日,false:今天不是工作日。 */ public static boolean isHoliday(Date date) { ... } isHoliday 方法中会具体有一个万年历...
7. **可配置性**:为了满足不同需求,控件应具有一定的可配置性,例如是否显示星期,节假日的标记方式等。 压缩包内的文件名"jiaoben3178"可能是源代码文件或者示例文件,具体内容需要解压查看。通常,这样的项目会...
在Java编程中,有时我们需要处理与日期相关的任务,例如判断某个日期是否是节假日,或者计算几个工作日后的新日期。这个工具类就是为了解决这样的问题而设计的。它包含了一个功能丰富的API,允许开发者轻松地进行...
java代码先获取全年的周末周日,定义全年的法定节假日,然后根据输入的日期计算,当前日期后的工作日,也可以用于计算工作日
该函数会调用`daysBetween`获取总天数,然后遍历每个日期,排除周末和节假日,统计有效工作日。 整个过程大致如下: 1. 计算两个日期之间的总天数。 2. 遍历这个天数范围内的每一天,检查是否为工作日。 3. 如果是...
1、Mysql 判断指定日期是否工作日(带自定义节假日、法定节假日) 2、Mysql 得到T+n个工作日日期(带自定义节假日、法定节假日) fGetWorkDay('2018-02-13', 5) ------------------------------ 2018-02-26 ...
- 国内外的节假日信息通常需要一个数据库或者API接口来获取。开发者可以创建一个包含所有节假日的本地数据库,或者使用在线服务如Google Calendar API、国家法定节假日API等,定期更新数据。在日历界面中,通过查询...
此外,为了显示节假日,开发者可能需要维护一个节假日数据库或者调用第三方API获取节假日信息。在中国,国家法定节假日如春节、国庆节等,可以通过固定规则计算,但对于一些特殊节日(如清明节、端午节、中秋节等)...
1. **日期处理**:首先,我们需要能够正确处理日期,这包括获取当前日期、判断是否为工作日、以及识别节假日等功能。这通常需要用到编程语言中的日期和时间库,例如Python的`datetime`模块。 2. **节假日库**:为了...
标题提到的"calc:原生js写的计算当年所有的节假日放假加班信息"是一个利用JavaScript实现的程序,它能够帮助我们获取并处理当年所有法定节假日的放假和加班情况。这个程序可能对人力资源管理、日历应用或与时间相关...
中国节假日判断某年某月某一天是不是工作日/节假日。支持 2004年 至 2021年,包括 2020年 的春节延长。安装pip install chinesecalendar样例import datetime# 判断 2018年4月30号 是不是节假日from chinese_calendar...
8. **优化节假日处理**:对于大量节假日,可以考虑使用`TreeSet`代替`HashSet`,以便利用红黑树的特性快速查找节假日。 9. **测试与验证**:编写单元测试确保算法正确性,可以使用各种输入,包括跨越多个年份、跨越...
本文将介绍如何使用C语言创建一个日历程序,并添加节假日功能。首先,我们看到代码中包含了多个头文件,如`<stdio.h>`、`<bios.h>`、`<dos.h>`、`<conio.h>`,这些头文件提供了标准输入输出、BIOS调用、DOS功能调用...
- 高亮节假日:遍历日历中的每个日期,检查该日期是否为节假日,如果是,则添加高亮类。 - 事件监听:添加点击事件监听器,允许用户选择日期,并可能触发某些动作,如显示详细日程或执行其他操作。 4. **节假日...