项目经验:自己写的根据时段得到日期的CalendarUtil
来源:互联网 发布:mysql读写分离实现 编辑:程序博客网 时间:2024/06/03 07:09
在做水质评价统计的时候,根据前台页面返回的最近一天、最近一星期、最近一月、最近一年计算出日期。
统计时段select控件:
CalendarUtil类代码:
package com.richway.waterevaluate.util;import java.util.Calendar;import java.util.Date;/** * @author lej *时间处理工具 * 2014-5-30下午1:43:02 */public class CalendarUtil {/** * 得到当天的0:0:0:000 */public static Date getTodayStart(){Calendar calendar = Calendar.getInstance(); //将小时至0 calendar.set(Calendar.HOUR_OF_DAY, 0); //将分钟至0 calendar.set(Calendar.MINUTE, 0); //将秒至0 calendar.set(Calendar.SECOND,0); //将毫秒至0 calendar.set(Calendar.MILLISECOND, 0);return calendar.getTime(); }/** * 得到当天第二天的0:0:0:000 */public static Date getTomorrowStart(){Calendar calendar = Calendar.getInstance(); calendar.add(Calendar.DAY_OF_MONTH, 1);//将小时至0 calendar.set(Calendar.HOUR_OF_DAY, 0); //将分钟至0 calendar.set(Calendar.MINUTE, 0); //将秒至0 calendar.set(Calendar.SECOND,0); //将毫秒至0 calendar.set(Calendar.MILLISECOND, 0);return calendar.getTime(); }/** * 得到当天所在的星期的第一天的0:0:0:000 */public static Date getThisWeekStart(){Calendar calendar = Calendar.getInstance(); // 直接取周一calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); //将小时至0 calendar.set(Calendar.HOUR_OF_DAY, 0); //将分钟至0 calendar.set(Calendar.MINUTE, 0); //将秒至0 calendar.set(Calendar.SECOND,0); //将毫秒至0 calendar.set(Calendar.MILLISECOND, 0);return calendar.getTime();}/** * 得到当天所在的星期的下一个星期第一天的0:0:0:000 */public static Date getNextWeekStart(){Calendar calendar = Calendar.getInstance(); // 取下周calendar.add(Calendar.WEEK_OF_YEAR, 1);// 取下周一calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); //将小时至0 calendar.set(Calendar.HOUR_OF_DAY, 0); //将分钟至0 calendar.set(Calendar.MINUTE, 0); //将秒至0 calendar.set(Calendar.SECOND,0); //将毫秒至0 calendar.set(Calendar.MILLISECOND, 0);return calendar.getTime();}/** * 得到当天所在的月份的第一天的0:0:0:000 */public static Date getThisMonthStart(){Calendar calendar = Calendar.getInstance(); // 得到当天是这月的第几天int dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH);// 减去dayOfMonth,得到第一天的日期,因为Calendar用0代表每月的第一天,所以要减一calendar.add(Calendar.DAY_OF_MONTH, -(dayOfMonth-1));//将小时至0 calendar.set(Calendar.HOUR_OF_DAY, 0); //将分钟至0 calendar.set(Calendar.MINUTE, 0); //将秒至0 calendar.set(Calendar.SECOND,0); //将毫秒至0 calendar.set(Calendar.MILLISECOND, 0);return calendar.getTime();}/** * 得到当天所在的月份的下一个月第一天的0:0:0:000 */public static Date getNextMonthStart(){Calendar calendar = Calendar.getInstance(); // 得到当天是这月的第几天int dayOfMonth = calendar.get(Calendar.DAY_OF_MONTH);// 减去dayOfMonth,得到第一天的日期,因为Calendar用0代表每月的第一天,所以要减一calendar.add(Calendar.DAY_OF_MONTH, -(dayOfMonth-1));//得到下一个月calendar.add(Calendar.MONTH, 1);//将小时至0 calendar.set(Calendar.HOUR_OF_DAY, 0); //将分钟至0 calendar.set(Calendar.MINUTE, 0); //将秒至0 calendar.set(Calendar.SECOND,0); //将毫秒至0 calendar.set(Calendar.MILLISECOND, 0);return calendar.getTime();}/** * 得到当天所在的年份的第一天的0:0:0:000 */public static Date getThisYearStart(){Calendar calendar = Calendar.getInstance(); // 得到当天是今年的第几天int dayOfYEAR = calendar.get(Calendar.DAY_OF_YEAR);// 减去dayOfYEAR,得到第一天的日期,因为Calendar用0代表每月的第一天,所以要减一calendar.add(Calendar.DAY_OF_YEAR, -(dayOfYEAR-1));//将小时至0 calendar.set(Calendar.HOUR_OF_DAY, 0); //将分钟至0 calendar.set(Calendar.MINUTE, 0); //将秒至0 calendar.set(Calendar.SECOND,0); //将毫秒至0 calendar.set(Calendar.MILLISECOND, 0);return calendar.getTime();}/** * 得到当天所在的年份的下一年第一天的0:0:0:000 */public static Date getNextYearStart(){Calendar calendar = Calendar.getInstance(); // 得到当天是今年的第几天int dayOfYEAR = calendar.get(Calendar.DAY_OF_YEAR);// 减去dayOfYEAR,得到第一天的日期,因为Calendar用0代表每月的第一天,所以要减一calendar.add(Calendar.DAY_OF_YEAR, -(dayOfYEAR-1));//得到下一个年calendar.add(Calendar.YEAR, 1);//将小时至0 calendar.set(Calendar.HOUR_OF_DAY, 0); //将分钟至0 calendar.set(Calendar.MINUTE, 0); //将秒至0 calendar.set(Calendar.SECOND,0); //将毫秒至0 calendar.set(Calendar.MILLISECOND, 0);return calendar.getTime();}/** * 得到两个时间对应年份的间隔 */public static int getYearsBetween(Date startTime,Date endTime){Calendar calendar = Calendar.getInstance(); calendar.setTime(startTime);int year1 = calendar.get(Calendar.YEAR); //获取年calendar.setTime(endTime);int year2 = calendar.get(Calendar.YEAR); //获取年int between = year2-year1;return between;}//当天开始Fri May 30 00:00:00 CST 2014//第二天开始Sat May 31 00:00:00 CST 2014//星期开始Mon May 26 00:00:00 CST 2014//下星期开始Mon Jun 02 00:00:00 CST 2014//当月开始Thu May 01 00:00:00 CST 2014//下月开始Sun Jun 01 00:00:00 CST 2014//当年开始Wed Jan 01 00:00:00 CST 2014//下年开始Thu Jan 01 00:00:00 CST 2015}
0 0
- 项目经验:自己写的根据时段得到日期的CalendarUtil
- 项目经验:js实现根据时段获取时间段
- 根据年得到所有星期日的日期
- 日历控件,为了在自己的程序中随时得到一个日期所写的
- 根据某个日期得到该月的所有日期
- 得到两个日期得间隔数,VB中的DateDiff ,我自己写了一个C#的
- 自己写的JS日期
- 根据时段自动切换网站的CSS风格
- 根据时段自动切换你的站点CSS风格
- C#实现的根据日期得到今天是星期几
- 根据日期(年月日)得到星期几的方法
- [MSSQL]根据年得到所有星期日的日期
- C#实现的根据日期得到今天是星期几
- C#实现的根据日期得到今天是星期几
- 根据时间戳得到常见的日期格式
- 根据函数System.currentTimeMillis()返回的毫秒数得到日期
- 根据Robotium、Orange写自己的框架
- java 根据给定的日期得到给定日期的前一天的日期
- leedcode做题总结,题目Gas Station-------- 2013/09/28
- POJ 1028
- extjs使用AJAX调用方法结束不给返回值赋值问题解决
- gcc和arm-linux-gcc区别
- Setting up a CloudStack dev environment on Windows
- 项目经验:自己写的根据时段得到日期的CalendarUtil
- Web服务
- 18.6.2 从内存输入
- 谈谈对APC的一点理解
- ECMall的模板解析语法介绍
- Node.js学习笔记5【http服务器与客户端】
- wifi信号放大器除了易拉罐,还有免费wifi软件
- poj-1426
- tomcat一次加载多个项目会溢出,解决办法