模糊查询:Spring Data JPA 如何进行模糊查询(LIKE) ?
Posted yang1314
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了模糊查询:Spring Data JPA 如何进行模糊查询(LIKE) ?相关的知识,希望对你有一定的参考价值。
原文详见-----> https://blog.csdn.net/czx1204/article/details/79131281
一. 方法一
1. Controller层:
方法参数如下,一定要加 "%"+name+"%"
/** * @description: * @author: 程志祥<[email protected]com> * @date: 2018/1/22 下午5:15 * @version: V1.0 */ @RestController public class UserController { @Autowired private TeamRepository teamRepository; @GetMapping("/findByNameLike") public List<Team> findByNameLike(String name) { // 一定要加 "%"+参数名+"%" return teamRepository.findByNameLike("%"+name+"%"); } }
2. Dao层:
一定要使用 JPA 规定的形式 findBy+参数名+Like(参数)
/** * @description: 数据层 * @author: 程志祥<[email protected]com> * @date: 2018/1/18 上午10:52 * @version: V1.0 */ public interface TeamRepository extends JpaRepository<Team, String> { List<Team> findByNameLike(String name);
参数简单化
/** * @description: * @author: 程志祥<[email protected]com> * @date: 2018/1/22 下午5:15 * @version: V1.0 */ @RestController public class UserController { @Autowired private TeamRepository teamRepository; @GetMapping("/findByNameLike") public List<Team> findByNameLike(String name) { return teamRepository.findByNameLike(name); } }2.Dao层:
需要自己定义SQL语句
/** * @description: * @author: 程志祥<[email protected]com> * @date: 2018/1/18 上午10:52 * @version: V1.0 */ public interface TeamRepository extends JpaRepository<Team, String> { @Query(value = "select t from Team t where t.name like ‘%?1%‘") List<Team> findByNameLike(String name);
生活不易,且行且珍惜,谢谢
以上是关于模糊查询:Spring Data JPA 如何进行模糊查询(LIKE) ?的主要内容,如果未能解决你的问题,请参考以下文章
如何在spring data jpa中进行POJO投影以进行本机查询
Spring Data JPA:如何对 RDS Aurora PostgreSQL 实例之间的读取查询进行负载平衡?