精华内容
下载资源
问答
  • JAVA LocalDate工具类

    2020-03-20 14:33:00
    package ... import java.time.Instant; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.Period; import java.time.ZoneId; import java.time.ZoneOffset; impor...
    package com.jp.jasper.util;
    
    import java.time.Instant;
    import java.time.LocalDate;
    import java.time.LocalDateTime;
    import java.time.Period;
    import java.time.ZoneId;
    import java.time.ZoneOffset;
    import java.time.format.DateTimeFormatter;
    import java.time.temporal.ChronoUnit;
    import java.time.temporal.TemporalUnit;
    import java.util.Date;
    
    /**
     * @Author hxk
     * @ClassName Jp_Common
     * @Date 2019/7/29 0029 10:18
     **/
    public class LocalDateUtilTime {
    
        //Date转换为LocalDateTime
        public static LocalDateTime convertDateToLDT(Date date) {
            return LocalDateTime.ofInstant(date.toInstant(), ZoneId.systemDefault());
        }
    
        //LocalDateTime转换为Date
        public static Date convertLDTToDate(LocalDateTime time) {
            return Date.from(time.atZone(ZoneId.systemDefault()).toInstant());
        }
    
    
        //获取指定日期的毫秒
        public static Long getMilliByTime(LocalDateTime time) {
            return time.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
        }
    
        //获取指定日期的秒
        public static Long getSecondsByTime(LocalDateTime time) {
            return time.atZone(ZoneId.systemDefault()).toInstant().getEpochSecond();
        }
    
        //获取指定时间的指定格式
        public static String formatTime(LocalDateTime time, String pattern) {
            return time.format(DateTimeFormatter.ofPattern(pattern));
        }
    
        //获取当前时间的指定格式
        public static String formatNow(String pattern) {
            return formatTime(LocalDateTime.now(), pattern);
        }
    
        //日期加上一个数,根据field不同加不同值,field为ChronoUnit.*
        public static LocalDateTime plus(LocalDateTime time, long number, TemporalUnit field) {
            return time.plus(number, field);
        }
    
        //日期减去一个数,根据field不同减不同值,field参数为ChronoUnit.*
        public static LocalDateTime minu(LocalDateTime time, long number, TemporalUnit field) {
            return time.minus(number, field);
        }
    
        /**
         * 获取两个日期的差  field参数为ChronoUnit.*
         *
         * @param startTime 开始时间
         * @param endTime   结束时间
         * @param field     单位(年月日时分秒)
         * @return long 相差时间
         */
        public static long betweenTwoTime(LocalDateTime startTime, LocalDateTime endTime, ChronoUnit field) {
            Period period = Period.between(LocalDate.from(startTime), LocalDate.from(endTime));
            if (field == ChronoUnit.YEARS) return period.getYears();
            if (field == ChronoUnit.MONTHS) return period.getYears() * 12 + period.getMonths();
            return field.between(startTime, endTime);
        }
    
        //获取一天的开始时间,2017,7,22 00:00
        public static LocalDateTime getDayStart(LocalDateTime time) {
            return time.withHour(0)
                    .withMinute(0)
                    .withSecond(0)
                    .withNano(0);
        }
    
        //获取一天的结束时间,2017,7,22 23:59:59.999999999
        public static LocalDateTime getDayEnd(LocalDateTime time) {
            return time.withHour(23)
                    .withMinute(59)
                    .withSecond(59)
                    .withNano(999999999);
        }
    
        // 时间戳转换LocalDateTime
        public static LocalDateTime timesTampToLocalDateTime(long timestamp) {
            Instant instant = Instant.ofEpochMilli(timestamp);
            return LocalDateTime.ofInstant(instant, ZoneId.systemDefault());
        }
    
        // LocalDateTime转换时间戳
        public static long localDateTimeToTimesTamp(LocalDateTime localDateTime) {
            localDateTime.toInstant(ZoneOffset.ofHours(8)).toEpochMilli();
            localDateTime.toInstant(ZoneOffset.of("+08:00")).toEpochMilli();
            return localDateTime.atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
        }
    
    
    
    }
    

     

    展开全文
  • jdk1.8LocalDate工具类

    2019-03-08 15:31:47
    jdk1.8LocalDate与LocalDateTime工具类 public class DateUtils { private static ThreadLocal<SimpleDateFormat> simpleDateFormatThreadLocal = ThreadLocal .withInitial(() -> new ...

    jdk1.8LocalDate与LocalDateTime工具类

    public class DateUtils {
    
    	private static ThreadLocal<SimpleDateFormat> simpleDateFormatThreadLocal = ThreadLocal
    			.withInitial(() -> new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"));
    
    	public static String format(Date date) {
    		return simpleDateFormatThreadLocal.get().format(date);
    	}
    
    	public static String getNow() {
    		return format(new Date());
    	}
    
    	public static Date parse(String dateString) throws ParseException {
    		return simpleDateFormat().parse(dateString);
    	}
    
    	public static final String DATEFORMAT1 = "yyyy-MM-dd HH:mm:ss";
    
    	public static final String DATEFORMAT2 = "yyyy-MM-dd HH:mm";
    
    	public static final String DATEFORMAT3 = "yyyy-MM-dd";
    
    
    	/**
    	 * 获取隔日日期(时间类型不同)
    	 *
    	 * 比如今天是2019-02-01,调用这个方法会返回2019-02-02
    	 *
    	 * @return
    	 */
    	public static Date alternativeDateTime() {
    		Calendar cal = Calendar.getInstance();
    		cal.setTime(new Date());
    		cal.add(Calendar.DATE, 1);
    		return cal.getTime();
    	}
    
    	/**
    	 * 获取隔日日期(时间类型不同)
    	 *
    	 * 比如今天是2019-02-02,调用这个方法会返回2019-02-01
    	 *
    	 * @return
    	 */
    	public static Date alternativeBeforeDateTime() {
    		Calendar cal = Calendar.getInstance();
    		cal.setTime(new Date());
    		cal.add(Calendar.DATE, -1);
    		return cal.getTime();
    	}
    
    	/**
    	 * Date计算两个时间相差几天
    	 * 备注:跨月的测试过,在DateUtilsTest类中
    	 * @param startDate
    	 * @param endDate
    	 * @return 正数,负数
    	 */
    	public static long timeIntervalInDays(Date startDate, Date endDate) {
    		return timeIntervalInDayTimes(date2LocalDateTime(startDate), date2LocalDateTime(endDate));
    	}
    
    	/**
    	 * 返回当前日期是星期几
    	 * 用org.apache.commons.lang3.time.DateFormatUtils工具类
    	 * @param date
    	 * @return
    	 */
    	public static String getWeekOfDate(Date date) {
    		return DateFormatUtils.format(date, "E");
    	}
    
    	/**
    	 * 获取两个日期之间的所有日期
    	 * 备注:包含开始和结束时间
    	 * @param begin
    	 * @param end
    	 * @return
    	 */
    	public static List<Date> getBetweenDate(Date begin, Date end) {
    		List<Date> result = new ArrayList<Date>();
    		//用Calendar 进行日期比较判断
    		Calendar calendar = Calendar.getInstance();
    		while (begin.getTime() <= end.getTime()) {
    			// 把日期添加到集合
    			result.add(begin);
    			// 设置日期
    			calendar.setTime(begin);
    			//把日期增加一天
    			calendar.add(Calendar.DAY_OF_YEAR, 1);
    			// 获取增加后的日期
    			begin = calendar.getTime();// NOSONAR
    		}
    		return result;
    	}
    
    	private static SimpleDateFormat simpleDateFormat() {
    		return simpleDateFormatThreadLocal.get();
    	}
    
    	private static long timeIntervalInDayTimes(LocalDateTime startDateTime, LocalDateTime endDateTime) {
    		return Duration.between(startDateTime, endDateTime).toDays();
    	}
    
    	private static Date localDateTime2Date(LocalDateTime localDateTime) {
    		ZoneId zone = ZoneId.systemDefault();
    		Instant instant = localDateTime.atZone(zone).toInstant();
    		return Date.from(instant);
    	}
    
    	private static LocalDateTime date2LocalDateTime(Date date) {
    		Instant instant = date.toInstant();
    		ZoneId zone = ZoneId.systemDefault();
    		return LocalDateTime.ofInstant(instant, zone);
    	}
    
    	public static LocalDateTime strToLocalDateTime(String date, String pattern) {
    		DateTimeFormatter df = DateTimeFormatter.ofPattern(pattern);
    		return LocalDateTime.parse(date, df);
    	}
    
    	/**
    	 * 判断两个时间是否相隔day天
    	 */
    	public static boolean isIntervalDays(Date startTime, Date endTime, Integer day) {
    		long between = endTime.getTime() - startTime.getTime();
    		if (between > 24L * 3600000 * day) {
    			return true;
    		}
    		return false;
    	}
    }

     

    展开全文
  • java 8 LocalDate工具类

    2021-04-23 16:49:11
    import java.time.*; import java.time.format.DateTimeFormatter; import java.time.temporal.TemporalAdjusters; public class DateTimeUtil { ... * 计算指定日期的所在周... public static LocalDate dayOfWeekMon
    package com.wisetv.selectmiddleware.util;
    
    import java.time.*;
    import java.time.format.DateTimeFormatter;
    import java.time.temporal.TemporalAdjusters;
    
    
    public class DateTimeUtil {
    
        /**
         *  计算指定日期的所在周的周一
         * @param localDate
         * @return
         */
        public static LocalDate dayOfWeekMonday(LocalDate localDate){
            return localDate.with(TemporalAdjusters.previousOrSame(DayOfWeek.MONDAY));
        }
    
        /**
         * 计算指定日期的周末
         * @param localDate
         * @return
         */
        public static LocalDate dayOfWeekSunday(LocalDate localDate){
            return localDate.with(TemporalAdjusters.nextOrSame(DayOfWeek.SUNDAY));
        }
    
        /**
         * 计算指定日期的月初
         * @param localDate
         * @return
         */
        public static LocalDate dayOfMonthFirst(LocalDate localDate){
            return localDate.with(TemporalAdjusters.firstDayOfMonth());
        }
    
        /**
         * 计算指定日期的月末
         * @param localDate
         * @return
         */
        public static LocalDate dayOfMonthLast(LocalDate localDate){
            return localDate.with(TemporalAdjusters.lastDayOfMonth());
        }
    
        /**
         * 计算指定日期的上个月月初
         * @param localDate
         * @return
         */
        public static LocalDate dayOfLastMonthFirst(LocalDate localDate){
            return localDate.minusMonths(1).with(TemporalAdjusters.firstDayOfMonth());
        }
    
        /**
         * 计算指定日期的上个月月末
         * @param localDate
         * @return
         */
        public static LocalDate dayOfLastMonthLast(LocalDate localDate){
            return localDate.minusMonths(1).with(TemporalAdjusters.lastDayOfMonth());
        }
    
        /**
         * 计算今年第一天
         * @param localDate
         * @return
         */
        public static LocalDate dayOfYearFirst(LocalDate localDate){
            return localDate.with(TemporalAdjusters.firstDayOfYear());
        }
    
        /**
         * 计算今年最后一天
         * @param localDate
         * @return
         */
        public static LocalDate dayOfYearLast(LocalDate localDate){
            return localDate.with(TemporalAdjusters.lastDayOfYear());
        }
    
        /**
         * 计算去年第一天
         * @param localDate
         * @return
         */
        public static LocalDate dayOfLastYearFirst(LocalDate localDate){
            return localDate.minusYears(1).with(TemporalAdjusters.firstDayOfYear());
        }
    
        /**
         * 计算去年最后一天
         * @param localDate
         * @return
         */
        public static LocalDate dayOfLastYearLast(LocalDate localDate){
            return localDate.minusMonths(1).with(TemporalAdjusters.lastDayOfYear());
        }
    
    
        /**
         * 根据格式化字符串格式化日期
         * @param localDate
         * @param pattern
         * @return
         */
        public static String formatDate(LocalDate localDate,String pattern){
            return localDate.format(DateTimeFormatter.ofPattern(pattern));
        }
    
        /**
         * 根据格式化字符串格式化日期
         * @param localDate
         * @param pattern
         * @return
         */
        public static String formatDateTime(LocalDateTime localDate,String pattern){
            return localDate.format(DateTimeFormatter.ofPattern(pattern));
        }
        /**
         * 将字符串转为日期
         * @param date
         * @param pattern
         * @return
         */
        public static LocalDate parseDate(String date,String pattern){
            LocalDate parse = LocalDate.parse(date, DateTimeFormatter.ofPattern(pattern));
            return parse;
        }
    
        /**
         * 将字符串转为日期
         * @param date
         * @param pattern
         * @return
         */
        public static LocalDateTime parseDateTime(String date,String pattern){
            LocalDateTime parse = LocalDateTime.parse(date, DateTimeFormatter.ofPattern(pattern));
            return parse;
        }
    }
    
    展开全文
  • 由于SimpleDateFormat存在线程安全问题,所以在JDK1.8中使用LocalDate和LocalDateTime来进行日期的工具类使用,下边就是原创的LocalDateUtil封装 《阿里巴巴开发手册1.4》 1、localDate格式化年月日为字符串 2、...

    未完待续 ........

    由于SimpleDateFormat存在线程安全问题,所以在JDK1.8中使用LocalDate和LocalDateTime来进行日期的工具类使用,下边就是原创的LocalDateUtil封装

           《阿里巴巴开发手册1.4》

    1、localDate格式化年月日为字符串

    2、localDateTime格式化年月日时分秒为字符串

    3、localDate时区格式化年月日为字符串

    4、localDateTime时区格式化年月日为字符串

    5、localDate 转 LocalDate

    6、localDateTimeString 格式化日期为日期格式

    7、localDateString 格式化日期为日期格式

    8、localDateTime 转 localDateTime

    9、日期转化为固定格式yyyy-MM-dd HH:mm:ss

    源码测试的位置在

    代码源码在

    git:https://github.com/liushaoye/utilLiu

    博客园详情https://www.cnblogs.com/liuyangfirst/p/11129788.htmlhttps://www.cnblogs.com/liuyangfirst/p/11129788.html

    展开全文
  • LocalDate 时间工具类

    2021-08-28 17:08:25
    } /** * LocalDate转Instant格式 * * @param localDate * @return */ public static Instant localDateToInstant(LocalDate localDate) { return localDate.atStartOfDay().toInstant(ZoneOffset.UTC); } /** * ...
  • LocalDate 官方时间工具类
  • java8出了个新的时间LocalDate和LocalDateFormat,我尝试用了下,感觉好用很多,效率也高。我拿几个例子比较一下。 之前我用的是Calendar,我要获取当前年,代码如下: Calendar calendar = Calendar....
  • /** * 获取指定月份 * * @param minus 偏移量 * @return 月 */ public static int ... return LocalDate.now().minusMonths(minus).getMonthValue(); } /** * 获取当前年 * * @return yyyy *...
  • package com.betawoo.admin.commons.utils; import java.time.DayOfWeek; import java.time.LocalDate; import java.time.format.DateTimeFormatter; import java.util.HashMap; import java.util.Map; public...
  • java 8时间日期操作工具类,覆盖了日常工作中大部分的日期操作,因LocalDateTime自身封装的方法比完善,简单的操作只需转换格式调用封装方法即可。强制依赖jdk8LocalDateUtils/* * Copyright 2016-2018. Individual...
  • Java LocalDate、LocalDateTime日期工具类

    千次阅读 2018-11-02 11:29:31
    java.time.LocalDate:表示日期,只包含年月日,如yyyy-MM-dd java.time.LocalTime:表示日期,只包含时分秒,如HH:mm:ss java.time.LocalDateTime:表示日期,包含年月日时分秒,如yyyy-MM-ddHH:mm:ss 备注:...
  • 工具类实现的功能有: 1.String日期转Date 2.Date日期转String 3.Date日期转LocaDate 4.LocalDate转Date 5.获取当前日期(String) 6.获取当前日期(Date) 7.获取两个日期之间的间隔 8.获取日期的星期 9...
  • 项目里以前都是Date类型的工具类,前端时间在学习java8里新添加的LocalDateTime 类之后,像发现了新大陆。就自己写了一些工具类。... * 时间工具类(包括LocalDate,LocalDateTime,Date) * @author wan...
  • 写了一个工具类,方便理解和调用。 import java.time.*; import java.time.temporal.ChronoUnit; import java.time.temporal.TemporalAdjusters; import java.util.Date; import static java.time.temporal....
  • 关联工具类: StringUtils:可以就用 org.apache.commons.lang3.StringUtils RegExUtils:RegExUtils 正则工具类_欲穷三千界 - CSDN 博客 https://gist.github.com/duanluan/dba74f7cb3f98ce345402ffa212c4595
  • Date 只能是日期加时间的格式,而 LocalDate 、LocalTime、LocalDateTime 分别代表日期,时间,日期+时间,非常灵活。再就是后者在日期计算及格式化方面非常简单易用,而Date要繁琐很多。 2.线程安全。 传统时间...
  • LocalDate、LocalDateTime、LocalTime 、Date 转换工具类 import java.time.*; import java.time.format.DateTimeFormatter; import java.util.Date; /** * @version v1.0 * @ProjectName: edu-school-api * @...
  • Java中 LocalDate、LocalTime、LocalDateTime三个时间工具类的使用介绍 一、背景: 之前在做项目的过程中,对日期时间类没有一个系统的了解,总是在用的时候去搜索一下,解决问题即完事,久而久之,导致对这个...
  • package ... import java.time.Instant; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.ZoneId; import java.time.ZonedDateTime; import java.util.Dat...
  • Date与Java8的时间之间的相互转换必须... * 日期转换工具类 * * @author Lenovo */ public class DateUtil { public static LocalDateTime date2LocalDateTime(Date date) { // return date.toInstant().atZone(Zo

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,923
精华内容 1,969
关键字:

localdate工具类