-
2020-09-24 19:11:08
LocalDateTime获取当日00:00、结束时间23.59与当月第一天00.00,月末最后一天23.59
localDdate格式为字符串
//localDateTime格式为字符串 DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); time.format(df)--------------2020-09-04 18:57:14
LocalDateTime 获取当天开始时间00.00 ~当天结束时间23.59
/** * 获取当天开始时间00.00 ~当天结束时间23.59 * @return */ public static Map<String,String> today(){ LocalDateTime today_start = LocalDateTime.of(LocalDate.now(), LocalTime.MIN); LocalDateTime today_end = LocalDateTime.of(LocalDate.now(), LocalTime.MAX); DateTimeFormatter time = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); String todayStart=time.format(today_start); String todayEnd = time.format(today_end); Map<String, String> map = new HashMap<>(); map.put("todayStart",todayStart); map.put("todayEnd",todayEnd); return map; }
LocalDateTime 获取本月第一天开始时间00.00 ~本月最后一天结束时间23.59
/** * * 获取本月第一天开始时间00.00 ~本月最后一天结束时间23.59 * @return */ public static Map<String,String> moth(){ LocalDateTime now = LocalDateTime.now(); LocalDateTime beginDateTime = now.with(TemporalAdjusters.firstDayOfMonth()).withHour(0).withMinute(0).withSecond(0); LocalDateTime endDateTime = now.with(TemporalAdjusters.lastDayOfMonth()).withHour(23).withMinute(59).withSecond(59); DateTimeFormatter time = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); String startMoth = time.format(beginDateTime); String endMoth = time.format(endDateTime); Map<String, String> map = new HashMap<>(); map.put("startMoth",startMoth); map.put("endMoth",endMoth); return map; }
LocalDateTime 获取上个月第一天开始时间00.00 ~上个月最后一天结束时间23.59
/** * 获取上个月第一天开始时间00.00 ~上个月最后一天结束时间23.59 * @return */ public static Map<String,String> lastMoth(){ LocalDateTime date = LocalDateTime.now().minusMonths(1); LocalDateTime firstDay = date.with(TemporalAdjusters.firstDayOfMonth()).withHour(0).withMinute(0).withSecond(0); LocalDateTime lastDay = date.with(TemporalAdjusters.lastDayOfMonth()).withHour(23).withMinute(59).withSecond(59); String startLastMonth = firstDay.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); String endLastMonth = lastDay.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); Map<String, String> map = new HashMap<>(); map.put("startLastMonth",startLastMonth); map.put("endLastMonth",endLastMonth); return map; }
更多相关内容 -
[Java]如何获取指定日期一天的开始时间和结束时间
2020-04-07 19:17:35在数据查询中,我们经常需要查询某段时间内的数据,而前端传入参数一般来说是不会指定小时,分钟,秒,甚至毫秒级别的,所以就需要后端进行时间处理;例如:查询2020-02-17 - 2020-02-19 的数据; 方案1 // 返回...背景
在数据查询中,我们经常需要查询某段时间内的数据,而前端传入参数一般来说是不会指定小时,分钟,秒,甚至毫秒级别的,所以就需要后端进行时间处理;例如:查询2020-02-17 - 2020-02-19 的数据;
方案1
// 返回时间格式如:2020-02-17 00:00:00 public static String getStartOfDay(Date time) { Calendar calendar = Calendar.getInstance(); calendar.setTime(time); calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); calendar.set(Calendar.MILLISECOND, 0); return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar.getTime()); } // 返回时间格式如:2020-02-19 23:59:59 public static String getEndOfDay(Date time) { Calendar calendar = Calendar.getInstance(); calendar.setTime(time); calendar.set(Calendar.HOUR_OF_DAY, 23); calendar.set(Calendar.MINUTE, 59); calendar.set(Calendar.SECOND, 59); calendar.set(Calendar.MILLISECOND, 999); return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar.getTime()); } // 获取30天以前的时间,同样是比较常用的 public static String getThirtyDaysAgo(Date time) { Calendar calendar = Calendar.getInstance(); calendar.setTime(time); calendar.add(calendar.DATE, -30); calendar.set(Calendar.HOUR_OF_DAY, 0); calendar.set(Calendar.MINUTE, 0); calendar.set(Calendar.SECOND, 0); calendar.set(Calendar.MILLISECOND, 0); return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar.getTime()); }
方案2
在java8中有更为简洁的代码。
// 获得某天最大时间 2020-02-19 23:59:59 public static Date getEndOfDay(Date date) { LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(date.getTime()), ZoneId.systemDefault());; LocalDateTime endOfDay = localDateTime.with(LocalTime.MAX); return Date.from(endOfDay.atZone(ZoneId.systemDefault()).toInstant()); } // 获得某天最小时间 2020-02-17 00:00:00 public static Date getStartOfDay(Date date) { LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(date.getTime()), ZoneId.systemDefault()); LocalDateTime startOfDay = localDateTime.with(LocalTime.MIN); return Date.from(startOfDay.atZone(ZoneId.systemDefault()).toInstant()); }
总结
在查询数据的sql中,通常使用的是字符串,所以一般在处理时间的函数中设定返回值为字符串类型即可;
-
vue vant Calendar组件日历 开始时间 结束时间的范围控制 时间戳标准时间转换 获得月份的最后一天
2021-07-24 10:00:09结束时间范围选择: 最小时间:开始时间 最大时间: 开始时间月份的最后一天 比如:当前时间2021-07-24,开始时间选择范围就在:2020-07-24至2021-07-24 当开始时间选择 2020-09-10 结束时间选择范围在:2020-09-10...功能:
开始时间范围选择: 最小时间:去年的今天 最大时间:当前时间
结束时间范围选择: 最小时间:开始时间 最大时间: 开始时间月份的最后一天比如:当前时间2021-07-24,开始时间选择范围就在:2020-07-24至2021-07-24
当开始时间选择 2020-09-10 结束时间选择范围在:2020-09-10至2020-09-30
思路:
1:主要是设置vant中van-calendar 组件的min-date和max-date来控制选择范围
2:开始时间选择范围比较简单,最小时间就是将当前时间的年份减去一年就行,最大时间就是当前时间也就是new Date()
3:结束时间的话是根据开始时间来选择的,所以我使用点击下拉样式的时候:才计算结束时间的范围
4:结束时间的最小时间为开始时间,最大时间的话瞅瞅下面这个公式参考参考start的月份==当前时间月份?当前时间:start月份的最后一天
注意点:
- 标准时间转换成时间戳:标准时间.getTime()
- 时间戳转换成标准时间:new Date(时间戳)
- 某时间的标准时间:new Date(2021,7,24),会生成2021年7月24日的中国标准时间,注意的是
括号里的不是字符串
- new Date(2021,7,0)是2021年7月的最后一天标准时间,new
Date(2021,7,1)是2021年8月的第一天标准时间
代码参考
<div class="time_info"> <div class="start"> <p>开始时间</p> <div> <span @click="showStart = true">{{ formatDate(start)}}</span> <van-icon color="#8e8e8e" name="arrow-down" /> <van-calendar title="开始时间" v-model="showStart" :min-date="startMin" :max-date="new Date()" @confirm="confirmStart" /> </div> </div> <p class="line">--</p> <div class="end"> <p>结束时间</p> <div> <span @click="endCli">{{formatDate(end)}}</span> <van-icon color="#8e8e8e" name="arrow-down" /> <van-calendar title="结束时间" v-model="showEnd" :min-date="start" :max-date="endMax" @confirm="confirmEnd" /> </div> </div> </div>
data
start: new Date(), //开始时间 end: new Date(), //结束时间 showStart: false, //开始日历 showEnd: false, //结束日历 startMin: new Date(this.min()), endMax: new Date(), //结束时间最大=开始时间当月的最后一天
js代码
// 结束最大时间为开始时间当月最后天,1:选择的是以前的月份,最大是到30,2:选择当月,就返回今天日期为最大选择 endMaxFun() { return this.start.getMonth() == new Date().getMonth() ? new Date() : new Date( Number(this.start.getFullYear()), Number(this.start.getMonth() + 1), 0 ); }, // 开始时间的最小时间,当前时间的去年今天 min() { let time = new Date(); return `${Number(time.getFullYear() - 1)},${Number( time.getMonth() + 1 )},${Number(time.getDate())}`; }, // 日历显示格式 formatDate(date) { return `${date.getFullYear()}-${(date.getMonth() + 1) .toString() .padStart(2, "0")}-${date.getDate().toString().padStart(2, "0")}`; }, // 点击结束 endCli() { this.endMax = this.endMaxFun(); this.showEnd = true; }, // 开始 confirmStart(date) { this.showStart = false; this.start = date; }, // 结束 confirmEnd(date) { this.showEnd = false; this.end = date; },
结束语
本身是个小菜鸡,所以写的可能有点繁琐,仅供参考啦~
希望能帮到大家~ -
WdatePicker 插件,要求限制结束时间和开始时间必须在同一天。
2018-10-16 17:53:11onpicked:pickedFunc 开始时间选择完后触发的函数 获取开始时间并对结束时间进行限制。
onpicked:pickedFunc 开始时间选择完后触发的函数
获取开始时间并对结束时间进行限制。 -
获取当前时间距离一天结束的剩余秒数(java)
2018-10-15 14:22:52使用场景:redis缓存,需要设置 键-值 的过期时间.往往我们会使用当前问题。。 使用方法:方案一: 使用Calendar(Java 8之前) public static Integer getRemainSecondsOneDay(Date currentDate) { Calendar ... -
vue element ui 日期时间段选择 开始日期不能选择结束日期之后,结束日期不能选开始日期之前,开始日期结束...
2020-12-10 16:53:28if (endData) { return ( time.getTime() > new Date(endData).getTime()-86400000 //86400000去掉可选择同一天 ); } }, }, options1:{ disabledDate: time => { let staData = this.sta; if (staData) { return ( ... -
moment截取某时间段每个月或每天的开始时间和结束时间
2019-06-25 16:06:35//先安装moment //npm i moment //再安装Lodash,可以用它内部封装好的方法,简单实用 //npm i lodash ...//假设需要查询2019-06-25至2019-12-31号之间每一天的00:00至23:59这个时间段的数据 //将时间转换为m... -
PHP获取一天起始时间戳,结束时间戳
2016-04-18 09:30:26$t=time();//获取当前时间戳 echo date("Y-m-d h:i:s",$t).""; $start=mktime(0,0,0,date("m",$t),date("d",$t),date("Y",$t)); $end=mktime(23,59,59,date("m",$t),date("d",$t),date("Y",$t));... -
页面中开始时间与结束时间默认为上个月的第一天与最后一天及相关名词解释
2015-08-06 19:48:49用javascript怎么取到当前月第一天、最后一天,本周第一天、最后一天 (2) document.documentElement.scrollTop 整个html文档--》根元素---》上滚动距离、 就是 向上滚出屏幕的页面的那段... -
Java最准确的获取当前一周开始时间和结束时间
2022-04-28 09:22:13准确定获取当前日期周的开始时间和结束时间 -
java获取本月开始时间和结束时间、上个月第一天和最后一天的时间以及当前日期往前推一周、一个月
2019-08-21 15:58:171、java获取本月开始时间和结束时间、上个月第一天和最后一天的时间以及当前日期往前推一周、一个月 import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.... -
MySql根据起始结束日期获取每一天的集合
2019-06-25 16:51:05背景:mysql中想根据两个日期获取范围内的每一天,作为一个结果集返回。mysql不像sqlserver拥有数字辅助表spt_values(我是没找到...),这样只能自己建一个表来实现了。 sql语句: select @num:=@num+1,date_... -
获取昨天一天起始时间和结束时间(包括年月日)
2017-06-22 19:08:37public static void main(String[] args){ ... //当前时间 Date dBefore = new Date(); Calendar calendar = Calendar.getInstance(); //得到日历 calendar.setTime(dNow);//把当前时间赋给日历 calendar.add -
java获取当前时间离一天结束剩余秒数
2018-03-28 14:26:48在使用redis缓存的场景中,往往需要设置 键-值 的过期时间,我们在项目中遇到需要获得当前时间点离当前天结束剩余的秒数作为存储到redis的 键-值 的过期时间。改时间通过java生成,下面提供几种方案供读者参考:... -
project设置工期为1个工作日,但开始时间与结束时间不是同一天,如何解决或者是设置?
2018-08-20 10:16:46如上图所示,某活动项工期为1个工作日,开始时间应该是当天,也就是开始时间与完成时间都是2016年8月23日才对,但工具中显示的完成时间为2016年8月24日,给人的感觉误以为工期为2个工作日; 这种情况基本是由于... -
project 2013 设置工期为1个工作日,但开始时间与结束时间不是同一天
2019-02-26 09:48:00project2013在工期栏输入 1 ,在开始时间结束时间点自动安排,就会出现如下情况,会被误认为是两天 2、问题解决 文件--》选项--》常规--》日期格式选择 2009年1月28日 12:33分这种格式--》点日程--》修改默认... -
java获取各种格式的时间,获取昨天明天日期,获取一天的开始结束时间
2018-07-27 14:50:12一、获取当前日期和时间 1、使用Date和DateFormat Date now = new Date(); DateFormat df1 = DateFormat.getDateInstance(); //格式化后的时间格式:2016-2-19 String str1 = d1.format(now); DateFormat d2 =... -
Java获取当前日期的前一天时间00:00:00 开始 到23:59:59 结束
2019-07-08 20:08:05* @Description 获取当前时期前 i 天 日期的零点 当前日期 2019-7-8 13:13:13 --> 获取日期 2019-07-07 * @Author: szj * @param: [i] 输入int值 代表天数 00:00:00 UNIX 时间 * @Return: int */ public ... -
sql语句之根据起始结束日期获取每一天、周、月、年
2019-05-31 09:24:53背景:很多的统计报表中需要输入起始,结束日期来按照不同的时间单位...1.根据起始和结束日期来获取范围中的每一天,作为结果集返回(函数) create function [dbo].[fn_GetDateRange](@DATE_START datetime, @DAT... -
(转)project设置工期为1个工作日,但开始时间与结束时间不是同一天,如何解决或者是设置?...
2018-09-09 14:33:29如上图所示,某活动项工期为1个工作日,开始时间应该是当天,也就是开始时间与完成时间都是2016年8月23日才对,但工具中显示的完成时间为2016年8月24日,给人的感觉误以为工期为2个工作日; 这种情况基本是由于... -
【转载】起始时间为同一天的mybatis时间段查询
2018-12-16 18:34:25描述一个时间戳查询要注意的问题。 一个简单的时间戳查询,一般sql我们是这样写的。 <if test=" startTime!=null and startTime!=''"> AND s.consumeTime >= ... -
Java 某天的开始时间与结束时间
2016-11-18 16:39:44需求中遇到“有效期”的时候就可能要用到一天的开始时间跟结束时间。 比如说:价格优惠活动,一件商品打折优惠期间是2016-11-18到2016-11-30,那么我们数据库存入的时间就应该是2016-11-18日的开始时间跟2016-11-... -
ElementUI使用日期选择器时时间少一天解决方法
2020-01-17 09:28:22ElementUI使用日期选择器时时间少一天解决方法 欢迎使用Markdown编辑器 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的... -
layui时间选择器开始时间和结束时间在同一年
2018-07-13 11:49:24//这里设置的是结束时间的年月日的最大值即开始时间当年的最后一天也就是12月的最后一天。 endtime.config.max = { year: date.year, month:date.month +(11-date.month), date: date.date +... -
判断两个时间是不是同一天
2015-07-12 10:35:38在项目中很多时候需要判断两个时间是否是同一天,例如用户每天都能领某种福利一次且只能领取一次,这时候当用户领取福利的时就需要判断用户上次领取的时间与当前时间是不是同一天,不是同一天的话可以领取,否则不能... -
2020年9月计算机二级成绩大概什么时候出来
2021-07-23 04:21:002020年9月大学英语二级考试成绩将在考试结束后约50天内得出(不同地区公布成绩的时间不同)。2020年9月计算机二级成绩发布时间2020年9月大学英语二级考试成绩将在考试结束后50天左右公布。少数考点将公布考生的具体... -
Flutter时间日期格式化等操作(一个月的最后一天日期,时间段内所有日期...)
2019-08-01 16:28:23免费文章,只希望能帮助大家。收费不是我的初衷。 我想写过Java,C#,js....等都需要对时间进行各种操作。 1.戳进行格式化成自己想要的。...2.将时间日期格式转化为时间戳,知道日期例如2019年08月01日,20... -
mybatis中时间查询条件是同一天且不带时分秒,而数据库时间是带时分秒的处理
2018-12-14 18:54:14<if test="beginTime != null and beginTime != ''"> AND DATE_FORMAT(b.GMT_CREATE,'%Y-%m-%d') &...=str_to_date(#{beginTime,jdbcType=VARCHAR},'%Y-%m-%d') ...end...