java 根据当天时间 获取前7天之间的时间 和后多少天的查询时间

java 根据当天时间 获取前7天之间的时间  和后多少天的查询时间

package com.kugou.schedu.service;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import com.kugou.schedu.dao.SongHotDao;

@Component
public class SongHotService {

	public static void main(String[] args) throws ParseException {
		getDayBetween(7, 7);
	}

	/**
	 * 根据当前时间 获取 开始时间 到结束时间
	 *
	 * @param day
	 *            获取几天之间的时间
	 * @return 开始时间 and 结束时间
	 */
	public static Date[] getDayBetween(Integer day) {

		// 今天整天日期
		Date startDt = new Date();
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		String s = sdf.format(startDt.getTime());
		try {
			startDt = sdf.parse(s);
		} catch (ParseException e) {
			e.printStackTrace();
		}

		Calendar calendar = new GregorianCalendar();
		calendar.setTime(new Date(startDt.getTime() - 1));
		calendar.add(calendar.DATE, day);

		// Long endDt = 604800L + startDt.getTime();

		System.out.println(startDt);
		System.out.println(calendar.getTime());
		return new Date[] { startDt, calendar.getTime() };
	}

	/**
	 * 根据当前时间 获取 开始时间 到结束时间
	 *
	 * @param day
	 *            获取几天之间的时间
	 *
	 * @param otherDay
	 *            从前几天 开始
	 *
	 * @return 开始时间 and 结束时间
	 */
	public static Date[] getDayBetween(Integer day, Integer otherDay) {

		// 今天整天日期
		Date startDt = new Date();
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		String s = sdf.format(startDt.getTime());
		try {
			startDt = sdf.parse(s);
		} catch (ParseException e) {
			e.printStackTrace();
		}

		Calendar calendarStart = new GregorianCalendar();
		calendarStart.setTime(startDt);
		calendarStart.add(calendarStart.DATE, -7);
		startDt=calendarStart.getTime();

		Calendar calendar = new GregorianCalendar();
		calendar.setTime(new Date(startDt.getTime() - 1));
		calendar.add(calendar.DATE, 7);

		System.out.println(startDt);
		System.out.println(calendar.getTime());
		return new Date[] {startDt,calendar.getTime()};
	}

}
/**
 * output:
   Fri Apr 17 00:00:00 CST 2015
   Thu Apr 23 23:59:59 CST 2015
 */
时间: 2024-08-28 23:35:58

java 根据当天时间 获取前7天之间的时间 和后多少天的查询时间的相关文章

【ArrayList:获取 10 个 1-20 之间的随机数,要求不能重复】

package com.companyname.common.test; import java.util.ArrayList; import java.util.Random; /** * @Description 获取 10 个 1-20 之间的随机数,要求不能重复 * @Author Created by shusheng. * @Email [email protected] * @Date 2018/12/14 */ public class RandomDemo { public s

java 获取前几天时间

java   获取前几天时间 一.toLocaleString()函数过时: //当前时间   Date endDate=new Date();   String endTime=endDate.toLocaleString();      //开始时间   Calendar calendar=new GregorianCalendar();   calendar.setTime(endDate);       calendar.add(calendar.DATE,-day);//把日期往后增加

Java端获取当前时间的前12个小时

1.Java(service方法)端获取当前时间的前12个小时: public Object getSearchName(HttpServletRequest request){ JSONArray arr = new JSONArray(); JSONObject obj = new JSONObject(); JSONObject objFirst = new JSONObject(); objFirst.put("itemname", "--请选择--");

Java时间获取

// java时间获取类 public class DateUtil { // 获取当前时间 public static Date getNowTime() { Calendar calendar = Calendar.getInstance(); return calendar.getTime(); } // 获得当天0点时间 public static Date getTodayStartTime() { Calendar cal = Calendar.getInstance(); cal.

Java语言API,Object类、StringBuilder、Date时间获取、System类常用

Object类Java.lang.Object(类):是Java中任何"引用类型"的父类.包括自定义的类.类库中的类.数组 都继承了toString()和equals()方法 1.toString方法:打印引用类型时,会自动调用toString方法,但是父类Object中的toString方法打印的是地址值,需要在自类中重写toString方法,以输出所有属性的值 2.equals方法:equals方法是比较两个对象的所有属性是否相同, 如果没有覆盖重写equals方法,那么Objec

一个Java程序猿眼中的前后端分离以及Vue.js入门

松哥的书里边,其实有涉及到 Vue,但是并没有详细说过,原因很简单,Vue 的资料都是中文的,把 Vue.js 官网的资料从头到尾浏览一遍该懂的基本就懂了,个人感觉这个是最好的 Vue.js 学习资料 ,因此在我的书里边就没有多说.但是最近总结小伙伴遇到的问题,感觉很多人对前后端分离开发还是两眼一抹黑,所以今天松哥想和大家聊一下前后端分离以及 Vue.js 的一点事,算是一个简单的入门科普吧. 前后端不分 后端模板:Jsp.FreeMarker.Velocity 前端模板:Thymeleaf 前

Python/Shell/MySQL时间获取与格式转换

一.说明 时间的获取及时间各格式间的转换是比较常用的操作,但一是多种语言经常容易弄混,二是同一种语言同一个功能可能有不同的实现函数,导致每次处理时间经常要百度所以来记录一下. 另外个人真不喜欢同样功能有多种写法的形式,从理想角度说多种实现方式让不同的人都能以其喜欢的方式进行编写:但实际上当你忘记的时候,你就总要怀疑是不是这么写.可不可以这么写.到底怎么写,然后到网上看又是五花八门的写法,这是个很耗费精力的事情.这也是我不喜欢Ruby的原因. 二.Python时间操作 2.1 获取时间对象 imp

Java线程栈的获取和分析

获取进程号 使用命令:jps 常用参数: -m 输出传递给main方法的参数,如果是内嵌的JVM则输出为null. -l 输出应用程序主类的完整包名,或者是应用程序JAR文件的完整路径. -v 输出传给JVM的参数. 示例: 线程栈的获取 使用命令:jstack,通常使用管道将信息输出到文件,便于分析 常用参数: -F 当jstack没有响应的时候强制打印栈信息. -l 打印关于锁的附加信息,例如属于java.util.concurrent的ownable synchronizers列表. -m

java通过jni方式获取硬盘序列号(windows,linux)

linux系统java通过jni方式获取硬盘序列号 http://blog.csdn.net/starter110/article/details/8186788 使用jni在windows下读取硬盘序列号 http://www.iflym.com/index.php/code/201109070001.html 通常做java程序的开发人员都想过想要通过某种手段来保护自己的程序.一般的方式是通过授权,采取软件授权的方式.这个时间就需要读取客户机器上的一些关键信息,比如硬盘序列号,网卡,cpu信