使用yyyy-MM-dd hh:mm:ss格式的日期对象去查询数据库

前提 : 

由于createTime字段在数据库中是date类型, 当条件是根据时间范围获取数据库中对应的数据时 :

如 : time > createTime   &&  createTime < time

解决办法:

 前端传递的string类型的日期字符串, 将他用dto类接受, 在对应的date属性上,

添加@DateTimeFormat(pattern = "yyyy-MM-dd hh:mm:ss")注解

但是我在用是 注解失效了 , 也没有解决了

变通办法:

用string接受前端传递的时间字符串, 用

Timestamp.valueOf(时间格式的字符串)即可解决

实例: 

if (StringUtil.notEmpty(operaDoctorInfoDTO.getRegStartTime())){

    criteria.add(Restrictions.lte("createTime", Timestamp.valueOf(operaDoctorInfoDTO.getRegStartTime()),true));
}

if (StringUtil.notEmpty(operaDoctorInfoDTO.getRegEndTime())){

    criteria.add(Restrictions.gte("createTime",Timestamp.valueOf(operaDoctorInfoDTO.getRegEndTime()),true));
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值