场景需求: 根据时间段搜索。需要查询某一时间段的数据,需要查询的字段为time。
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date time= new Date();
/**
* 获取time
* @return time
*/
public Date getTime() {
return time;
}
/**
* 设置time
* @param time
*/
public void setTime(Date time) {
this.time= time;
}
时间选择使用element,具体实现见官网
https://element.eleme.cn/#/zh-CN/component/datetime-picker#ri-qi-he-shi-jian-fan-wei
value-format 属性可以设置v-model绑定的值的Date属性。把时间段转为字符串用字段dateTimes接收传给后端。
/**
* 时间段 用于查询
*/
private String dateTimes;
/**
* 开始时间,用于查询
*/
private String startTime;
/**
* 结束时间,用于查询
*/
private String endTime;
public String getStartTime() {
return this.dateTimes != null && this.dateTimes != "" ?
this.dateTimes.split("至")[0] : this.startTime;
}
public void setStartTime(String startTime) {
this.startTime = startTime;
}
public String getEndTime() {
return this.dateTimes != null && this.dateTimes != "" ?
this.cdateTimes.split("至")[1] : this.startTime;
}
public void setEndTime(String endTime) {
this.endTime = endTime;
}
public String getDateTimes() {
return dateTimes;
}
public void setDateTimes(String dateTimes) {
this.dateTimes = dateTimes;
}
mybatis中判断
<if test="startTime != null and endTime != null">and (date(TIME)
between #{startTime} and #{endTime})</if>