问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

jsp中,获取工作日的方法?

发布网友 发布时间:2022-05-07 09:47

我来回答

2个回答

热心网友 时间:2023-10-24 16:02

这里要计算工作日,其实没有什么大的难点,难就难在这里规定了法定假日放假三天,春节也是。五一和十一就比较容易只要判断月日就可以了,春节是阴历的1月1日,这个阴历怎么个算法呢?这里我倒是搞不懂了,不知道怎么解决,唉,用了比较笨的方法。看我代码吧:

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.List;

public class testDate {
public static void main(String[] args) {
// TODO Auto-generated method stub
testDate td = new testDate();
td.showTime("2006-01-01","2006-03-01");
}

/**
* 显示工作日
* @param date1
* @param date2
*/
public void showTime(String date1,String date2){
// 这里要判断第二个参数日期要比第一个参数日期大先继续运行
GregorianCalendar gc = new GregorianCalendar();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat holidaysdf=new SimpleDateFormat("MM-dd");
//工作日
int workDay=0;
try {
Date d1 = sdf.parse(date1);
Date d2 = sdf.parse(date2);
gc.setTime(d1);
// System.out.println(sdf2.format(d1));
long time = d2.getTime() - d1.getTime();
long day = time/3600000/24 + 1;
// System.out.println(day);
for(int i=0;i<day;i++){
if (gc.get(GregorianCalendar.DAY_OF_WEEK)!= GregorianCalendar.SATURDAY &&
gc.get(GregorianCalendar.DAY_OF_WEEK)!= GregorianCalendar.SUNDAY) {
// System.out.println(holidaysdf.format(gc.getTime()));
if(!holidayList(holidaysdf.format(gc.getTime())) && !holidayOfCN(sdf.format(gc.getTime())))
workDay++;
}
//天数加1
gc.add(gc.DATE,1);
}
// gc.add(gc.DATE,1);
// System.out.println(sdf.format(gc.getTime()));
} catch (Exception e) {
e.printStackTrace();
}
System.out.println(workDay);
}

//春节放假三天,定义到2020年
public boolean holidayOfCN(String year){
List ls = new ArrayList();
ls.add("2005-02-09");ls.add("2005-02-10");ls.add("2005-02-11");
ls.add("2006-01-29");ls.add("2006-01-30");ls.add("2006-01-31");
ls.add("2007-02-18");ls.add("2007-02-19");ls.add("2007-02-21");
ls.add("2008-02-07");ls.add("2008-02-08");ls.add("2008-02-09");
ls.add("2009-01-26");ls.add("2009-01-27");ls.add("2009-01-28");
ls.add("2010-02-14");ls.add("2010-02-15");ls.add("2010-02-16");
ls.add("2011-02-03");ls.add("2011-02-04");ls.add("2011-02-05");
ls.add("2012-01-23");ls.add("2012-01-24");ls.add("2012-01-25");
ls.add("2013-02-10");ls.add("2013-02-11");ls.add("2013-02-12");
ls.add("2014-01-31");ls.add("2014-02-01");ls.add("2014-02-02");
ls.add("2015-02-19");ls.add("2015-02-20");ls.add("2015-02-21");
ls.add("2006-02-08");ls.add("2006-02-09");ls.add("2006-02-10");
ls.add("2017-01-28");ls.add("2017-01-29");ls.add("2017-01-30");
ls.add("2018-02-16");ls.add("2018-02-17");ls.add("2018-02-18");
ls.add("2019-02-05");ls.add("2019-02-06");ls.add("2019-02-07");
ls.add("2020-01-25");ls.add("2020-01-26");ls.add("2020-01-27");
if(ls.contains(year))
return true;
return false;
}
//法定假日,五一和国庆
public boolean holidayList(String findDate){
List ls = new ArrayList();
ls.add("05-01");
ls.add("05-02");
ls.add("05-03");
ls.add("10-01");
ls.add("10-02");
ls.add("10-03");
if(ls.contains(findDate))
return true;
return false;
}
}

热心网友 时间:2023-10-24 16:03

这个是调用calculateTheWorkDate这个方法,有2个参数DateTime.Instance().getCurrentTime(1)和service.getCn_yb()。
想知道怎么获取,看calculateTheWorkDate这个方法代码。
你不贴出来calculateTheWorkDate里面的内容,谁知道怎么获取的。

热心网友 时间:2023-10-24 16:02

这里要计算工作日,其实没有什么大的难点,难就难在这里规定了法定假日放假三天,春节也是。五一和十一就比较容易只要判断月日就可以了,春节是阴历的1月1日,这个阴历怎么个算法呢?这里我倒是搞不懂了,不知道怎么解决,唉,用了比较笨的方法。看我代码吧:

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.List;

public class testDate {
public static void main(String[] args) {
// TODO Auto-generated method stub
testDate td = new testDate();
td.showTime("2006-01-01","2006-03-01");
}

/**
* 显示工作日
* @param date1
* @param date2
*/
public void showTime(String date1,String date2){
// 这里要判断第二个参数日期要比第一个参数日期大先继续运行
GregorianCalendar gc = new GregorianCalendar();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat holidaysdf=new SimpleDateFormat("MM-dd");
//工作日
int workDay=0;
try {
Date d1 = sdf.parse(date1);
Date d2 = sdf.parse(date2);
gc.setTime(d1);
// System.out.println(sdf2.format(d1));
long time = d2.getTime() - d1.getTime();
long day = time/3600000/24 + 1;
// System.out.println(day);
for(int i=0;i<day;i++){
if (gc.get(GregorianCalendar.DAY_OF_WEEK)!= GregorianCalendar.SATURDAY &&
gc.get(GregorianCalendar.DAY_OF_WEEK)!= GregorianCalendar.SUNDAY) {
// System.out.println(holidaysdf.format(gc.getTime()));
if(!holidayList(holidaysdf.format(gc.getTime())) && !holidayOfCN(sdf.format(gc.getTime())))
workDay++;
}
//天数加1
gc.add(gc.DATE,1);
}
// gc.add(gc.DATE,1);
// System.out.println(sdf.format(gc.getTime()));
} catch (Exception e) {
e.printStackTrace();
}
System.out.println(workDay);
}

//春节放假三天,定义到2020年
public boolean holidayOfCN(String year){
List ls = new ArrayList();
ls.add("2005-02-09");ls.add("2005-02-10");ls.add("2005-02-11");
ls.add("2006-01-29");ls.add("2006-01-30");ls.add("2006-01-31");
ls.add("2007-02-18");ls.add("2007-02-19");ls.add("2007-02-21");
ls.add("2008-02-07");ls.add("2008-02-08");ls.add("2008-02-09");
ls.add("2009-01-26");ls.add("2009-01-27");ls.add("2009-01-28");
ls.add("2010-02-14");ls.add("2010-02-15");ls.add("2010-02-16");
ls.add("2011-02-03");ls.add("2011-02-04");ls.add("2011-02-05");
ls.add("2012-01-23");ls.add("2012-01-24");ls.add("2012-01-25");
ls.add("2013-02-10");ls.add("2013-02-11");ls.add("2013-02-12");
ls.add("2014-01-31");ls.add("2014-02-01");ls.add("2014-02-02");
ls.add("2015-02-19");ls.add("2015-02-20");ls.add("2015-02-21");
ls.add("2006-02-08");ls.add("2006-02-09");ls.add("2006-02-10");
ls.add("2017-01-28");ls.add("2017-01-29");ls.add("2017-01-30");
ls.add("2018-02-16");ls.add("2018-02-17");ls.add("2018-02-18");
ls.add("2019-02-05");ls.add("2019-02-06");ls.add("2019-02-07");
ls.add("2020-01-25");ls.add("2020-01-26");ls.add("2020-01-27");
if(ls.contains(year))
return true;
return false;
}
//法定假日,五一和国庆
public boolean holidayList(String findDate){
List ls = new ArrayList();
ls.add("05-01");
ls.add("05-02");
ls.add("05-03");
ls.add("10-01");
ls.add("10-02");
ls.add("10-03");
if(ls.contains(findDate))
return true;
return false;
}
}

热心网友 时间:2023-10-24 16:03

这个是调用calculateTheWorkDate这个方法,有2个参数DateTime.Instance().getCurrentTime(1)和service.getCn_yb()。
想知道怎么获取,看calculateTheWorkDate这个方法代码。
你不贴出来calculateTheWorkDate里面的内容,谁知道怎么获取的。

热心网友 时间:2023-10-24 16:02

这里要计算工作日,其实没有什么大的难点,难就难在这里规定了法定假日放假三天,春节也是。五一和十一就比较容易只要判断月日就可以了,春节是阴历的1月1日,这个阴历怎么个算法呢?这里我倒是搞不懂了,不知道怎么解决,唉,用了比较笨的方法。看我代码吧:

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.List;

public class testDate {
public static void main(String[] args) {
// TODO Auto-generated method stub
testDate td = new testDate();
td.showTime("2006-01-01","2006-03-01");
}

/**
* 显示工作日
* @param date1
* @param date2
*/
public void showTime(String date1,String date2){
// 这里要判断第二个参数日期要比第一个参数日期大先继续运行
GregorianCalendar gc = new GregorianCalendar();
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat holidaysdf=new SimpleDateFormat("MM-dd");
//工作日
int workDay=0;
try {
Date d1 = sdf.parse(date1);
Date d2 = sdf.parse(date2);
gc.setTime(d1);
// System.out.println(sdf2.format(d1));
long time = d2.getTime() - d1.getTime();
long day = time/3600000/24 + 1;
// System.out.println(day);
for(int i=0;i<day;i++){
if (gc.get(GregorianCalendar.DAY_OF_WEEK)!= GregorianCalendar.SATURDAY &&
gc.get(GregorianCalendar.DAY_OF_WEEK)!= GregorianCalendar.SUNDAY) {
// System.out.println(holidaysdf.format(gc.getTime()));
if(!holidayList(holidaysdf.format(gc.getTime())) && !holidayOfCN(sdf.format(gc.getTime())))
workDay++;
}
//天数加1
gc.add(gc.DATE,1);
}
// gc.add(gc.DATE,1);
// System.out.println(sdf.format(gc.getTime()));
} catch (Exception e) {
e.printStackTrace();
}
System.out.println(workDay);
}

//春节放假三天,定义到2020年
public boolean holidayOfCN(String year){
List ls = new ArrayList();
ls.add("2005-02-09");ls.add("2005-02-10");ls.add("2005-02-11");
ls.add("2006-01-29");ls.add("2006-01-30");ls.add("2006-01-31");
ls.add("2007-02-18");ls.add("2007-02-19");ls.add("2007-02-21");
ls.add("2008-02-07");ls.add("2008-02-08");ls.add("2008-02-09");
ls.add("2009-01-26");ls.add("2009-01-27");ls.add("2009-01-28");
ls.add("2010-02-14");ls.add("2010-02-15");ls.add("2010-02-16");
ls.add("2011-02-03");ls.add("2011-02-04");ls.add("2011-02-05");
ls.add("2012-01-23");ls.add("2012-01-24");ls.add("2012-01-25");
ls.add("2013-02-10");ls.add("2013-02-11");ls.add("2013-02-12");
ls.add("2014-01-31");ls.add("2014-02-01");ls.add("2014-02-02");
ls.add("2015-02-19");ls.add("2015-02-20");ls.add("2015-02-21");
ls.add("2006-02-08");ls.add("2006-02-09");ls.add("2006-02-10");
ls.add("2017-01-28");ls.add("2017-01-29");ls.add("2017-01-30");
ls.add("2018-02-16");ls.add("2018-02-17");ls.add("2018-02-18");
ls.add("2019-02-05");ls.add("2019-02-06");ls.add("2019-02-07");
ls.add("2020-01-25");ls.add("2020-01-26");ls.add("2020-01-27");
if(ls.contains(year))
return true;
return false;
}
//法定假日,五一和国庆
public boolean holidayList(String findDate){
List ls = new ArrayList();
ls.add("05-01");
ls.add("05-02");
ls.add("05-03");
ls.add("10-01");
ls.add("10-02");
ls.add("10-03");
if(ls.contains(findDate))
return true;
return false;
}
}

热心网友 时间:2023-10-24 16:03

这个是调用calculateTheWorkDate这个方法,有2个参数DateTime.Instance().getCurrentTime(1)和service.getCn_yb()。
想知道怎么获取,看calculateTheWorkDate这个方法代码。
你不贴出来calculateTheWorkDate里面的内容,谁知道怎么获取的。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
找专业防水队做完还漏水怎么维权 法院会受理房屋漏水造成的纠纷吗? 巴西龟最长活多久,家养!!! 养胃的药最好的是什么啊 婴儿积食发烧不愿吃药怎么办 板门穴位在哪个部位 手机设置放偷看的方法? 凝结水回收器生产厂家? 个人账户养老金预测公式:现有5万元,缴费20年,能领多少钱? 临沂比较有名的男装品牌 java 给月份3月和该月1日是星期二,求该月最后一个工作日的日期 如何实现 Java计算工作日和法定节日的一个需求,怎样设计? 求救 java 编程的问题。如何计算某年某月的工作日? 在电脑里的Fonts装了字体为什么打开cdr时候有缺字体而我又重新安装在Fonts里字体却又有这个字体 如何用java代码判断工作日 同一台电脑,CDR中字体缺失问题 cdr提示字体缺失,但我电脑明明就有,这是为什么 求助:CDR文件因缺少字体而打不开怎么办? 为什么电脑上有字体,打开CDR文件时却显示缺字体呢? 音乐传播是学什么的 学习音乐的过程 听音乐有助于学习吗 比较喜欢音乐,请问有没有什么协会能加入啊,想跟别人交流学习一下? 如何运用小组合作学习打造高效音乐课堂 1.和同学交流自己在音乐学习过程中积极的或消极的经验,并尝试做出原因分析? 蜜蜡手链有什么作用 蜜蜡手串手链的盘玩方法有哪些 佩戴蜜蜡手链有什么讲究 《血裔少年》txt下载在线阅读全文,求百度网盘云资源 《梦幻少年》最新章节全文阅读免费下载百度网盘资源,谁有? java 获取一个月有多少个工作日? 在Java中怎么取前一个工作日 母亲之爱的作文80o字左右 赞美母亲之爱的诗句 母亲之水养世人, 远离闹市活自在, 误会出口勿多言, 满腔热诚埋月下。 每句一字 母亲之歌与爱抚之歌的详细资料 关于体现母亲之爱的作文(要写一个事情体现母亲之爱 要有细节描写)小学5年级作 关于母亲之爱的精彩开头结尾 以《母亲之歌》写一篇征文 母亲之诗 关于母亲之歌 壶口瀑布门票多少 山西省的壶口瀑布门票有优惠吗? 为什么wifi连上后断了就连不上了 wifi连不上,连上自己会断开,显示无法访问网络,求解 为什么精神病院叫“五台山” 扬州五台山医院能治失眠丶厌食丶胸闷纠心的毛病吗 请问扬州有没有专业的心理咨询公司,怎么联系?费用高吗?效果怎么样?精神病院和心理咨询公司哪个好? 南京精神疾病医院是几院?(不是问五台山) 我有精神病能到五台山皈依吗?