SpringMVC日期类型转换问题处理方法归纳
方法一:实体类中加日期格式化注解
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date date;
Jsp页面引用
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
//导入相关的标签包
<fmt:formatDate value="${user.date}" pattern="yyyy-MM-dd HH:mm:ss"/>
//获得时间并按照指定的格式显示
在java中格式化输出date,和将某个String转换为date类型
将某个字符串转换为date类型
String aa1 = "2018-09-12";//定义一个需要格式化转换为date字符串。
//初始化一个格式化转换器,注意和string的格式对应,用于实现向date类型格式转换。
SimpleDateFormat sDateFormat1 = new SimpleDateFormat("yyyy-MM-dd");
try {
Date date2 = sDateFormat1.parse(aa1); //调用parse方法实现向date类型的转换
System.out.println(date2.toString());
} catch (ParseException e) {
e.printStackTrace();
}
将date类型转换为按照格式字符串
Date date = new Date();//创建一个获得当前时间的对象
//创建一个时间转换器,将时间按照指定格式转换为String类型
SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd");
//调用format方法实现日期向字符串类型的转换
String Sdate=dateformat.format(date);
System.out.println(date);
System.out.println(Sdate);
判断两个日期相差的天数
通过时间秒毫秒数判断两个时间的间隔
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date1 = new Date();
Date date2 = new Date();
date1 = sdf.parse("2017-10-01");
date2 = sdf.parse("2017-11-01");
//通过Date的gettime()获得时间秒毫秒数判断两个时间的间隔
int days = (int) ((date2.getTime() - date1.getTime()) / (1000*3600*24));
System.out.println(days);