public static Map getFirstLastDayByMonth(Date date, String pattern, boolean isNeedHms) { SimpleDateFormat df = new SimpleDateFormat(pattern); Calendar calendar = Calendar.getInstance(); calendar.setTime(date); Date theDate = calendar.getTime(); // 第一天 GregorianCalendar gcLast = (GregorianCalendar) Calendar.getInstance(); gcLast.setTime(theDate); gcLast.set(Calendar.DAY_OF_MONTH, 1); String day_first = df.format(gcLast.getTime()); StringBuffer str = new StringBuffer().append(day_first); if (isNeedHms) str.append(" 00:00:00"); day_first = str.toString(); // 最后一天 calendar.add(Calendar.MONTH, 1); // 加一个月 calendar.set(Calendar.DATE, 1); // 设置为该月第一天 calendar.add(Calendar.DATE, -1); // 再减一天即为上个月最后一天 String day_last = df.format(calendar.getTime()); StringBuffer endStr = new StringBuffer().append(day_last); if (isNeedHms) endStr.append(" 23:59:59"); day_last = endStr.toString(); Map map = new HashMap(); map.put("first", day_first); map.put("last", day_last); return map; * 获取当前季度 public static String getQuarter() { Calendar c = Calendar.getInstance(); int month = c.get(c.MONTH) + 1; int quarter = 0; if (month >= 1 && month <= 3) { quarter = 1; } else if (month >= 4 && month <= 6) { quarter = 2; } else if (month >= 7 && month <= 9) { quarter = 3; } else { quarter = 4; return quarter + ""; * 获取某季度的第一天和最后一天 * @param num第几季度 public static String[] getCurrQuarter(int num) { String[] s = new String[2]; String str = ""; // 设置本年的季 Calendar quarterCalendar = null; switch (num) { case 1: // 本年到现在经过了一个季度,在加上前4个季度 quarterCalendar = Calendar.getInstance(); quarterCalendar.set(Calendar.MONTH, 3); quarterCalendar.set(Calendar.DATE, 1); quarterCalendar.add(Calendar.DATE, -1); str = DateUtils.formatDate(quarterCalendar.getTime(), "yyyy-MM-dd"); s[0] = str.substring(0, str.length() - 5) + "01-01"; s[1] = str; break; case 2: // 本年到现在经过了二个季度,在加上前三个季度 quarterCalendar = Calendar.getInstance(); quarterCalendar.set(Calendar.MONTH, 6); quarterCalendar.set(Calendar.DATE, 1); quarterCalendar.add(Calendar.DATE, -1); str = DateUtils.formatDate(quarterCalendar.getTime(), "yyyy-MM-dd"); s[0] = str.substring(0, str.length() - 5) + "04-01"; s[1] = str; break; case 3:// 本年到现在经过了三个季度,在加上前二个季度 quarterCalendar = Calendar.getInstance(); quarterCalendar.set(Calendar.MONTH, 9); quarterCalendar.set(Calendar.DATE, 1); quarterCalendar.add(Calendar.DATE, -1); str = DateUtils.formatDate(quarterCalendar.getTime(), "yyyy-MM-dd"); s[0] = str.substring(0, str.length() - 5) + "07-01"; s[1] = str; break; case 4:// 本年到现在经过了四个季度,在加上前一个季度 quarterCalendar = Calendar.getInstance(); str = DateUtils.formatDate(quarterCalendar.getTime(), "yyyy-MM-dd"); s[0] = str.substring(0, str.length() - 5) + "10-01"; s[1] = str.substring(0, str.length() - 5) + "12-31"; break; return s; * 用途:以指定的格式格式化日期字符串 * @param pattern 字符串的格式 * @param currentDate 被格式化日期 * @return String 已格式化的日期字符串 * @throws NullPointerException 如果参数为空 public static String formatDate(Date currentDate, String pattern){ if(currentDate == null || "".equals(pattern) || pattern == null){ return null; SimpleDateFormat sdf = new SimpleDateFormat(pattern); return sdf.format(currentDate);
import org.springframework.util.StringUtils; import java .text.DateFormat; import java .text.ParseException; import java .text.SimpleDateFormat; import java .util.*; public class DateUtil { public s...
import java .text.ParseException; import java .text.SimpleDateFormat; import java .util.Calendar; import java .util.Date; * 根据给定时间 获取 周、月度、 季度 、年度开始结束时间 * @author wsp public class DateCalendarUtil { 1. 获取 当前时间 格式---->2019-08-04 13:30:29:getNowTime 2.将一个日期字符串转换成Data对象 string–>date:stringToDate 3将date转换成字符串 date—>string:dateToString 4. 获取 指定日期 ,返回值为: “周日”, “周一”, “周二”, “周三”, “周四”, “周五”, “周六”:getWeekOfDate 5. 获取 指定日 isSameDay(final Date date1, final Date date2):判断两个时间是否是同 一天 ; isSameInstant(final Date date1, final Date date2):判断两个时间是否为同一毫秒 常用的时间判断示例代码 DateUtils.... 没啥可说的贴一段代码吧,包括了日期字符串格式转换和计算日期所在 季度 第一天 。 我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客: 全新的界面设计 ,将会带来全新的写作体验; 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示; 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示; 全新的 KaTeX数学公式 语法; 增加了支持甘特 解决MySQL 5.7.9版本sql_mode=only_full_group_by问题,this is incompatible with sql_mode=only_full_group_by错误 28171 hy577: An error occurred while installing the following packages: │ │ - gcc │ │ - kernel-devel-5.11.12-300.el8.aarch64 │ │ - make │ │ - selinux-policy-devel │ │ - dkms │ │ - elfutils-libelf-devel │ │ - hpijs │ │ │ │ Install these packages manually and start the Parallels │ │ Tools installation again.