“HH:mm:ss”格式的数据的转换与增删改查 mysql springmvc

需要对时间数据进行一个增删改查的操作

数据库对应的类型为”time”,字段名为time

java实体类中添加一个java.sql.time类型的time属性与String类型的属性timeString
startTime,startTimeString,EndTime,EndTimeString
startTime、EndTime都是Time类型,正常的getter、setter方法,
startTimeString、EndTimeString的getter、setter需要进行数据处理

 public String getStartTimeString() {
        return DateUtils.format(startTime, "HH:mm:ss");
    }
//startTimeString是null或者''的时候,不能转换为time类型,不然会报空指针异常
    public void setStartTimeString(String startTimeString) {
        this.startTimeString = startTimeString;
        if (StringUtils.isNotBlank(startTsString)) {
            try {
                this.startTime = new Time(DateUtils.parse(startTimeString, "HH:mm:ss").getTime());
            } catch (Exception e) {
                logger.debug("" + e.getMessage());
            }
        }
    }

public String getEndTimeString() {
        return DateUtils.format(endTime, "HH:mm:ss");
    }
//endTimeString是null或者''的时候,不能转换为time类型,不然会报空指针异常
    public void setEndTimeString(String endTimeString) {
        this.endTimeString = endTimeString;
        if (StringUtils.isNotBlank(endTimeString)) {
            try {
                this.endTs = new Time(DateUtils.parse(endTimeString, "HH:mm:ss").getTime());
            } catch (Exception e) {
                logger.debug("" + e.getMessage());
            }
        }
    }

jsp中的时间段设置格式为HH:mm:ss,开始时间的WdatePicker的maxdate限制写法:

#F{$dp.$D(\'endTime\');}

结束时间段的maxdate限制的写法,需要加上一个初始的时间限制,不然在没有选择开始时间的情况下选择结束时间会报类似非法时间的错误:

#F{$dp.$D(\'startTime\')||\'00:00:00\';}

sql语句的时间段限制:
开始时间:

<if test="startTime != null">
        <![CDATA[
          AND TIME_FORMAT(start_time,'%H:%i:%s') >= TIME_FORMAT(#{startTime},'%H:%i:%s')
        ]]>
      </if>

结束时间:

 <if test="endTime != null">
        <![CDATA[
          AND TIME_FORMAT(end_time,'%H:%i:%s') <= TIME_FORMAT(#{endTime},'%H:%i:%s')
        ]]>
      </if>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值