一、注解处理
1、在实体中加入注解@JsonFormat:
@JsonFormat(pattern="yyyy-MM-dd HH:mm")
private Date measurementtime;
2、@JsonFormat @DateTimeFormat @Temporal 日期注解区分
@JsonFormat 此注解用于属性或者方法上(最好是属性上),可以方便的把Date类型直接转化为我们想要的模式
@JsonFormat(pattern="yyyy-MM-dd HH:mm")
private Date measurementtime;
@DateTimeFormat 格式化日期使用@DatetimeFormat很简单,这里需要注意的是:使用时要引入一个类库joda-time-1.3.jar,否则会无法访问相应路径(400错误)
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date installdate;
@Temporal Hibernate注解
如果在某类中有Date类型的属性,数据库中存储可能是’yyyy-MM-dd hh:MM:ss’要在查询时获得年月日,在该属性上标注@Temporal(TemporalType.DATE) 会得到形如’yyyy-MM-dd’ 格式的日期。
如果在某类中有Date类型的属性,数据库中存储可能是’yyyy-MM-dd hh:MM:ss’要获得时分秒,在该属性上标注 @Temporal(TemporalType.TIME) 会得到形如’HH:MM:SS’ 格式的日期。
如果在某类中有Date类型的属性,数据库中存储可能是’yyyy-MM-dd hh:MM:ss’要获得’是’yyyy-MM-dd hh:MM:ss’,在该属性上标注 @Temporal(TemporalType.TIMESTAMP) 会得到形如’HH:MM:SS’ 格式的日期
@Temporal(TemporalType.TIMESTAMP)
private Date acceptancedate;
二、工具类处理
import org.springframework.util.StringUtils;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* @ClassName: DateConverter
* @Description:
* @Version: v1.0.0
* @Author: Fu Hao
* @Date: 2019/11/24 0024 下午 9:02
* Modification History:
* Date Author Version Description
* -------------------------------------------------------------
* 2019/11/24 0024 Fu Hao v1.0.0 创建
*/
public class DateConverter {
private static final String dateFormat = "yyyy-MM-dd HH:mm:ss";
private static final String shortDateFormat = "yyyy-MM-dd";
private static final String timeStampFormat = "^\d+$";
private static final String hDateFormat = "yyyy年MM月dd日 HH:mm:ss";
private static final String hshortDateFormat = "yyyy年MM月dd日";
public static Date convert(String value) {
if (StringUtils.isEmpty(value)) {
return null;
}
value = value.trim();
try {
if (value.contains("-")) {
SimpleDateFormat formatter;
if (value.contains(":")) {
formatter = new SimpleDateFormat(dateFormat);
} else {
formatter = new SimpleDateFormat(shortDateFormat);
}
return formatter.parse(value);
} else if (value.matches(timeStampFormat)) {
Long lDate = new Long(value);
return new Date(lDate);
} else if (value.contains("年")) {
SimpleDateFormat formatter;
if (value.contains(":")) {
formatter = new SimpleDateFormat(hDateFormat);
} else {
formatter = new SimpleDateFormat(hshortDateFormat);
}
return formatter.parse(value);
}
} catch (Exception e) {
throw new RuntimeException(String.format("parser %s to Date fail", value));
}
throw new RuntimeException(String.format("parser %s to Date fail", value));
}
}
技术交流请加扣扣:863967089