Spring Date jpa 多条件查询基础问题?

怎么使用,jpa 实现根据用户名和电话号码进行模糊匹配。sql 实现效果如下所示:

Select * from user u where u.name like  ‘%23%’  and u.mobile like ‘%132%’

如果,用户名name 为null 则查询语句变成下面这样

Select * from user u where u.mobile like ‘%132%’

sql拼接本人也会,但是,本人开发的项目使用DAO层是使用,自定义查询注解,不方便进行sql语句拼接。如下图所示,

clipboard.png

问题:如何使用自定义查询注解实现我上面那两行sql语句? 如果不使用自定义注解,又应该怎么写?

请大神赐教,感激不尽……

阅读 6.5k
3 个回答

jpa2的条件查询api可以试试,可以达到你的要求,封装一下很好用。

findByUserNameLikeOrUserMobileLike()

这个原生的方法也不行吗?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进