一.java实体类注解说明
@DatetimeFormat是将String转换成Date,一般前台给后台传值时用
@JsonFormat(pattern="yyyy-MM-dd") 将Date转换成String 一般后台传值给前台时
@JsonFormat会让时间以0区时间显示。如果直接使用会少了8小时修改为
@JsonFormat(pattern="yyyy-MM-dd",timezone="GMT+8")
二.Java的日期格式使用
java.util.Date日期格式为:年月日时分秒
java.sql.Date日期格式为:年月日
java.sql.Time日期格式为:时分秒
java.sql.Timestamp日期格式为:年月日时分秒纳秒(毫微秒)
从数据库中取出来的日期一般都用getTimestamp()方法,例如oracle中一个字段数据类型Date,要想获得准确日期就用getTimestamp()方法。
java.util.Calendar类(日历类)Calendar类是一个抽象基类,主要用于日期之间的各种计算获取Calendar实例的方法:使用Calendar.getInstance()方法或调用它子类GregorianCalendar的构造器。
java.text.SimpleDateFormat:其他五种均可以被格式化同种样式的时间
三.日期格式的类型转换
//yyyy-MM-dd HH:mm:ss表示24时间进制 SimpleDateFormat sDateFormat=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); String date=sDateFormat.format(new Date()); //注:MySQL数据库中date和datetime数据类型可接收日期格式数据,若通过String类型插入数据库,需要在日期字符串上加上标即'1970-01-01 01:01:01'
2 String类型转Date类型
String dStr ="2001.12.12-08:23:21"; Date d = null; SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd-HH:mm:ss"); try { d = sdf.parse(dStr); } catch (ParseException pe) { System.out.println(pe.getMessage()); } System.out.println(d.toLocaleString());//返回当前区域设置的默认格式表示的日期
3 毫秒数据格式化成日期格式
//以1429339937748为毫秒数实例化一个Date对象 Date date =new Date(1429339937748l); SimpleDateFormat sdf=newSimpleDateFormat("yyyy-MM-dd"); //设置转化格式 String time=sdf.format(date);//将Date对象转化为yyyy-MM-dd形式的字符串 System.out.println(time);//输出字符串
2..java.sql.Date 是针对SQL语句使用的,new java.sql.Date(new java.util.Date().getTime(),它只包含日期而没有时间部分
3.它都有getTime方法返回毫秒数

5..java.sql.Timestamp的使用
6.java.sql.Time
7..java.util.Calendar
8.所有时间日期都可以被SimpleDateFormat格式化format()