package com.test.common.my_utils.date;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import org.apache.commons.lang3.time.DateFormatUtils;
import com.test.common.my_utils.object.ObjectUtil;
/**
* @remark 日期工具类, 继承org.apache.commons.lang.time.DateUtils类
*
* @projectName test
*
* @author 蓝色心情
*
* @date 2018年8月31日下午4:21:47
*
*/
public class DateUtil extends org.apache.commons.lang3.time.DateUtils {
public static String[] parsePatterns = { "yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm", "yyyy-MM",
"yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy/MM", "yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss",
"yyyy.MM.dd HH:mm", "yyyy.MM", "yyyyMMddHHmmssSSS" };
/**
* 得到当前日期字符串 格式(yyyy-MM-dd)
*/
public static String getDate() {
return getDate("yyyy-MM-dd");
}
/**
* 得到当前日期字符串 格式(yyyy-MM-dd) pattern可以为:"yyyy-MM-dd" "HH:mm:ss" "E"
*/
public static String getDate(String pattern) {
return DateFormatUtils.format(new Date(), pattern);
}
/**
* 得到日期字符串 默认格式(yyyy-MM-dd) pattern可以为:"yyyy-MM-dd" "HH:mm:ss" "E"
*/
public static String formatDate(Date date, Object... pattern) {
String formatDate = null;
if (!ObjectUtil.isEmpty(date)) {
if (pattern != null && pattern.length > 0) {
formatDate = DateFormatUtils.format(date, pattern[0].toString());
} else {
formatDate = DateFormatUtils.format(date, "yyyy-MM-dd");
}
}
return formatDate;
}
/**
* 得到日期时间字符串,转换格式(yyyy-MM-dd HH:mm:ss)
*/
public static String formatDateTime(Date date) {
return formatDate(date, "yyyy-MM-dd HH:mm:ss");
}
/**
* 得到当前时间字符串 格式(HH:mm:ss)
*/
public static String getTime() {
return formatDate(new Date(), "HH:mm:ss");
}
/**
* 得到当前日期和时间字符串 格式(yyyy-MM-dd HH:mm:ss)
*/
public static String getDateTime() {
return formatDate(new Date(), "yyyy-MM-dd HH:mm:ss");
}
/**
* 得到当前年份字符串 格式(yyyy)
*/
public static String getYear() {
return formatDate(new Date(), "yyyy");
}
/**
* 得到当前月份字符串 格式(MM)
*/
public static String getMonth() {
return formatDate(new Date(), "MM");
}
/**
* 得到当天字符串 格式(dd)
*/
public static String getDay() {
return formatDate(new Date(), "dd");
}
/**
* 得到当前星期字符串 格式(E)星期几
*/
public static String getWeek() {
return formatDate(new Date(), "E");
}
/**
* 日期型字符串转化为日期 格式 { "yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm",
* "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy.MM.dd",
* "yyyy.MM.dd HH:mm:ss", "yyyy.MM.dd HH:mm" }
*/
public static Date parseDate(Object str) {
if (str == null) {
return null;
}
try {
return parseDate(str.toString(), parsePatterns);
} catch (ParseException e) {
return null;
}
}
@SuppressWarnings("deprecation")
public static Date getFirstDayOfMonth(Date month) {
Calendar cal = Calendar.getInstance();
// 设置年份
cal.set(Calendar.YEAR, 1900 + month.getYear());
// 设置月份
cal.set(Calendar.MONTH, month.getMonth());
// 获取某月最小天数
int firstDay = cal.getActualMinimum(Calendar.DAY_OF_MONTH);
// 设置日历中月份的最小天数
cal.set(Calendar.DAY_OF_MONTH, firstDay);
// 格式化日期
return cal.getTime();
}
/**
* 获得该月最后一天
*
* @param year
* @param month
* @return
*/
@SuppressWarnings("deprecation")
public static Date getLastDayOfMonth(Date month) {
Calendar cal = Calendar.getInstance();
// 设置年份
cal.set(Calendar.YEAR, 1900 + month.getYear());
// 设置月份
cal.set(Calendar.MONTH, month.getMonth());
// 获取某月最大天数
int lastDay = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
// 设置日历中月份的最大天数
cal.set(Calendar.DAY_OF_MONTH, lastDay);
// 格式化日期
return cal.getTime();
}
/**
* 获取过去的天数
*
* @param date
* @return
*/
public static long pastDays(Date date) {
long t = new Date().getTime() - date.getTime();
return t / (24 * 60 * 60 * 1000);
}
/**
* 获取过去的小时
*
* @param date
* @return
*/
public static long pastHour(Date date) {
long t = new Date().getTime() - date.getTime();
return t / (60 * 60 * 1000);
}
/**
* 获取过去的分钟
*
* @param date
* @return
*/
public static long pastMinutes(Date date) {
long t = new Date().getTime() - date.getTime();
return t / (60 * 1000);
}
/**
* 转换为时间(天,时:分:秒.毫秒)
*
* @param timeMillis
* @return
*/
public static String formatDateTime(long timeMillis) {
long day = timeMillis / (24 * 60 * 60 * 1000);
long hour = (timeMillis / (60 * 60 * 1000) - day * 24);
long min = ((timeMillis / (60 * 1000)) - day * 24 * 60 - hour * 60);
long s = (timeMillis / 1000 - day * 24 * 60 * 60 - hour * 60 * 60 - min * 60);
long sss = (timeMillis - day * 24 * 60 * 60 * 1000 - hour * 60 * 60 * 1000 - min * 60 * 1000 - s * 1000);
return (day > 0 ? day + "," : "") + hour + ":" + min + ":" + s + "." + sss;
}
/**
* 获取两个日期之间的天数
*
* @param before
* @param after
* @return
*/
public static double getDistanceOfTwoDate(Date before, Date after) {
long beforeTime = before.getTime();
long afterTime = after.getTime();
return (afterTime - beforeTime) / (1000 * 60 * 60 * 24);
}
/**
* 将日期类型的字符串变成一串数字
*
* @param dateStr
* @return
*/
public static String getTimestampStr(String dateStr) {
if (!ObjectUtil.isEmpty(dateStr)) {
Date date = DateUtil.parseDate(dateStr);
if (!ObjectUtil.isEmpty(date)) {
return String.valueOf(date.getTime() / 1000);
}
}
return null;
}
public static String getyyyyMMddHHmmssSSS() {
return formatDate(new Date(System.currentTimeMillis()), "yyyyMMddHHmmssSSS");
}
public static String getyyyyMMddHHmmss() {
return formatDate(new Date(System.currentTimeMillis()), "yyyyMMddHHmmssSSS");
}
public static boolean isValidDate(String str, String formatstr) {
boolean convertSuccess = true;
// 指定日期格式为四位年/两位月份/两位日期,注意yyyy/MM/dd区分大小写"yyyy-MM-dd"
SimpleDateFormat format = new SimpleDateFormat(formatstr);
try {
// 设置lenient为false. 否则SimpleDateFormat会比较宽松地验证日期 比如2007/02/29会被接受,并转换成2007/03/01
format.setLenient(false);
format.parse(str);
} catch (ParseException e) {
// e.printStackTrace();
// 如果throw java.text.ParseException或者NullPointerException,就说明格式不对
convertSuccess = false;
}
return convertSuccess;
}
/**
*
* @param parseDate
* @param date
* @return
*/
public static boolean min(Date parseDate, Date date) {
return parseDate.getTime() < date.getTime();
}
/**
* 获取某日期相隔几天后的日期
*
* @param nowDate
* @param days
* @return
*/
public static Date getSomeDate(Date nowDate, Integer days) {
// SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date;
Calendar calendar = Calendar.getInstance();
calendar.setTime(nowDate);
calendar.add(Calendar.DAY_OF_MONTH, days);
date = calendar.getTime();
return date;
}
@SuppressWarnings("deprecation")
public static Boolean isSameMonth(Date date1, Date date2) {
return date1.getYear() == date2.getYear() && date1.getMonth() == date2.getMonth();
}
/**
* @param args
* @throws ParseException
*/
public static void main(String[] args) throws ParseException {
// System.out.println(getSomeDate(new Date(),5));
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
Date date1 = df.parse("2018-03-03 17:0
没有合适的资源?快使用搜索试试~ 我知道了~
springboot+mybatis+logback
共101个文件
class:32个
java:32个
xml:9个
需积分: 30 12 下载量 109 浏览量
2018-09-07
17:54:47
上传
评论
收藏 204KB ZIP 举报
温馨提示
springboot1.5.6.RELEASE,简单的springboot项目仅做了查询功能。。。懒死了,没办法^_^ 本项目为jar。。可直接运行,如果想改成war,如下操作: 第一步:pom.xml中导入tomcat依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <!-- <scope>provided</scope> --> </dependency> 另外需要去掉依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> 第二步:TestApplication类需继承SpringBootServletInitializer 然后实现SpringApplicationBuilder方法: @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(TestApplication.class); } ok
资源推荐
资源详情
资源评论
收起资源包目录
springboot+mybatis+logback (101个子文件)
DateUtil.class 7KB
WxErrorController.class 6KB
ObjectUtil.class 5KB
BaseService.class 5KB
MyRequestUtil.class 4KB
BaseEntity.class 3KB
AESUtil.class 3KB
WxAjaxAdviceController.class 3KB
CookieUtils.class 3KB
TestJson.class 3KB
TestJsonEnums.class 3KB
WxParametersInterceptor.class 3KB
SpringContextHolder.class 3KB
SysUserService.class 2KB
WxInterceptor.class 2KB
FileUtil.class 2KB
SysUserController.class 2KB
WxWebMvcConfigurer.class 1KB
WxAjaxVerifyException.class 1KB
WxAjaxErrorException.class 1KB
WxAjaxException.class 1KB
TestApplication.class 928B
BaseMapper.class 888B
Global.class 846B
DruidConfig.class 806B
WxAjaxParamException.class 759B
SysUser.class 755B
DruidStatViewServlet.class 745B
DruidStatFilter.class 662B
TestApplicationTests.class 606B
BaseController.class 530B
SysUserMapper.class 394B
.classpath 1KB
mvnw.cmd 5KB
.gitignore 268B
error.html 295B
error.html 295B
index.html 253B
index.html 253B
maven-wrapper.jar 46KB
DateUtil.java 9KB
ObjectUtil.java 6KB
WxErrorController.java 5KB
AESUtil.java 4KB
MyRequestUtil.java 4KB
BaseService.java 3KB
TestJson.java 3KB
CookieUtils.java 3KB
BaseEntity.java 3KB
WxAjaxAdviceController.java 3KB
SpringContextHolder.java 2KB
FileUtil.java 2KB
TestJsonEnums.java 2KB
BaseMapper.java 2KB
WxParametersInterceptor.java 2KB
WxInterceptor.java 2KB
SysUserController.java 1KB
TestApplication.java 1KB
SysUserService.java 1KB
DruidStatViewServlet.java 1KB
WxWebMvcConfigurer.java 1003B
DruidConfig.java 871B
WxAjaxErrorException.java 832B
WxAjaxVerifyException.java 827B
WxAjaxException.java 808B
Global.java 622B
DruidStatFilter.java 591B
WxAjaxParamException.java 589B
SysUser.java 502B
SysUserMapper.java 467B
BaseController.java 421B
TestApplicationTests.java 323B
logo.jpg 19KB
logo.jpg 19KB
MANIFEST.MF 330B
mvnw 6KB
org.eclipse.jdt.core.prefs 291B
org.eclipse.core.resources.prefs 155B
org.eclipse.m2e.core.prefs 97B
.project 1KB
.project 1KB
.project 1KB
.project 1KB
.project 1KB
pom.properties 216B
maven-wrapper.properties 110B
logback-spring.xml 6KB
logback-spring.xml 6KB
logback-spring.xml 4KB
logback-spring.xml 4KB
pom.xml 4KB
pom.xml 4KB
SysUserMapper.xml 1KB
SysUserMapper.xml 1KB
org.eclipse.wst.common.project.facet.core.xml 145B
application-dev.yml 2KB
application-dev.yml 2KB
application-prod.yml 2KB
application-prod.yml 2KB
application.yml 123B
共 101 条
- 1
- 2
资源评论
蓝色心情QQ
- 粉丝: 3
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功