一、使用简介
我们项目中对于日期的用法是数据库中存的是long类型时间戳,在前后台之间不同,都是以这个形式传递。
二、转换
一般都是将时间戳转成Date类型,Date类型就有很强语义了。
Date date = new Date(long mill);
但是一些特殊需求还需要转换成string,比如之前项目中保存上传图片的时候根据年月日创建三级文件夹
分别获取年月日
以前是通过Date的getYear类似的方法来操作,现在这个方法在api中已经被废弃了,一般通过GregorianCalendar类来获取。
获取年月
GregorianCalendar g=new GregorianCalendar(Date);
System.out.println(g.get(GregorianCalendar.YEAR));
System.out.println(g.get(GregorianCalendar.MONTH)+1);
System.out.println(g.get(GregorianCalendar.DAY_OF_MONTH));
将Date转换成各种形式的string
通过SimpleDateFormat来实现
三、自定义DateFomatUtil类
一般我们可以自己封装一个日期格式化类,
/**
* 日期格式化类
*/
public class DateFormatUtil {
/**
* @note:获得calerdar
*/
public static Calendar getCalendarByPattern(String pattern,Date date) {
// SimpleDateFormat sdf = new SimpleDateFormat(pattern);
Calendar calendar = GregorianCalendar.getInstance();
calendar.setTime(date);
return calendar;
}
/**剩下的一些就省略**/
}