自定义工具类,获取当前时间到第二天的零点、下个月1号零点的时间差(s):
cacheManager.set(monthKey, totalMonCount.toString(), DateUtil.getSecsToEndOfCurrentDay());public class DateUtil {
/**
*获取每月最后一天时间
* @param sDate1
* @return
*/
public static Date getLastDayOfMonth(Date sDate1) {
Calendar cDay1 = Calendar.getInstance();
cDay1.setTime(sDate1); final int lastDay = cDay1.getActualMaximum(Calendar.DAY_OF_MONTH);
Date lastDate = cDay1.getTime();
lastDate.setDate(lastDay); return lastDate;
} /*
获取下一个月第一天凌晨1点
*/
public static Date nextMonthFirstDate() {
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 1); //设置为每月凌晨1点
calendar.set(Calendar.DAY_OF_MONTH, 1); //设置为每月1号
calendar.add(Calendar.MONTH, 1); // 月份加一,得到下个月的一号// calendar.add(Calendar.DATE, -1); 下一个月减一为本月最后一天
return calendar.getTime();
} /**
* 获取第二天凌晨0点毫秒数
* @return
*/
public static Date nextDayFirstDate() throws ParseException {
Calendar cal = Calendar.getInstance();
cal.setTime(new Date());
cal.add(Calendar.DAY_OF_YEAR, 1);
cal.set(Calendar.HOUR_OF_DAY, 00);
cal.set(Calendar.MINUTE, 0);
cal.set(Calendar.SECOND, 0); return cal.getTime();
} //*********
/**
* 获取当前时间到下个月凌晨1点相差秒数
* @return
*/
public static Long getSecsToEndOfCurrentMonth(){
Long secsOfNextMonth = nextMonthFirstDate().getTime(); //将当前时间转为毫秒数
Long secsOfCurrentTime = new Date().getTime(); //将时间转为秒数
Long distance = (secsOfNextMonth - secsOfCurrentTime)/1000; if (distance > 0 && distance != null){ return distance;
} return new Long(0);
} /**
* 获取当前时间到明天凌晨0点相差秒数
* @return
*/
public static Long getSecsToEndOfCurrentDay() throws ParseException {
Long secsOfNextDay = nextDayFirstDate().getTime(); //将当前时间转为毫秒数
Long secsOfCurrentTime = new Date().getTime(); //将时间转为秒数
Long distance = (secsOfNextDay - secsOfCurrentTime)/1000; if (distance > 0 && distance != null){ return distance;
} return new Long(0);
}
}
-
js 鼠标位置
js 获取鼠标位置
-
npm 发布指定文件
npm 发布指定文件
-
Vue extend $mount 构造器详解
本节介绍两个 Vue.js 内置但却不常用的 API——extend 和 $mount,它们经常一起使用。不常用,是因为在业务开发中,基本没有它们的用武之地,但在独立组件开发时,在一些特定的场景它们是至关重要的。
-
vue通过options访问methods,调用方法this指向我问题
我们用vue的底层方法options,可以解决很多问题。但是这个时候调用方法,this指向会发生很大的变化,会很影响我们的预期,我们可以给方法指定this
-
CSS3中的transition属性详解
transition: property duration timing-function delay transition属性是个复合属性,她包括以下几个子属性: transition-property :规定设置过渡效果的css属性名称 transition-duration :规定完成过渡效果需要多少秒或毫秒 transition-timing-function :指定过渡函数,规定速度效果的速度曲线 transition-delay :指定开始出现的延迟时间
-
Vue中鼠标事件,mousehover,模拟@hover
vue中并没有 @hover 事件,但是可以使用 @mouseenter 和 @mouseleave 来模拟hover操作。
-
Intellij IDEA 解析less 为css
Intellij IDEA,解析less,css
-
Vue.extend挂载到实例上
用Vue,extend,做一个全局组件
-
vue项目使用.env文件配置全局环境变量
属性名必须以VUE_APP_开头,比如VUE_APP_XXX
-
vue怎么能像jquery那样获得数据
有时候我们需要获得动态的元素,但是我们没法直接用vue语法,vue一共了当前组件的对象,我们可以避免使用document.get...之类的。