SpringDataJPA Hibernate CriteriaBuilder日期模糊查询

2023年 3月 8日 40点热度 0人点赞 0条评论

在SpringMVC+SpringDataJPA结合Hibernate开发中如何做日期模糊查询?

在CriteriaBuilder中有一个function函数,可以通过此方法对日期数据转换成字符串数据然后再进行模糊查询

例如:

//我的开发语言Kotlin,相信你可以很容易的把下面两行代码转化为Java
val timeStr = criteriaBuilder.function("str", String::class.java, root.get<Date>("time"))
criteriaBuilder.like(timeString, "%$search%")

通过开启show-sql查看SQL语句得到如下语句:

select
        //省略N行内容
    from
        save_file savefile0_ 
    where
        //省略一些内容
        or cast(savefile0_.time as char) like ? //这行是生成的转换语句
    order by
        savefile0_.id asc limit ?

由百度得知cast的信息如下:

CAST函数语法规则是:Cast(字段名 as 转换的类型 ),其中类型可以为:

  • CHAR[(N)] 字符型
  • DATE 日期型
  • DATETIME 日期和时间型
  • DECIMAL float型
  • SIGNED int
  • TIME 时间型

转载于:https://my.oschina.net/houkunlin/blog/1784636

原文地址:SpringDataJPA Hibernate CriteriaBuilder日期模糊查询

本文来自:https://blog.duhbb.com

本文链接地址:SpringDataJPA Hibernate CriteriaBuilder日期模糊查询,英雄不问来路,转载请注明出处,谢谢。

有话想说:那就赶紧去给我留言吧。

rainbow

这个人很懒,什么都没留下

文章评论