原文詳見-----> https://blog.csdn.net/czx1204/article/details/79131281
一. 方法一
1. Controller層:
方法參數如下,一定要加 "%"+name+"%"
/** * @description: * @author: 程志祥<15610554031@163.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: 程志祥<15610554031@163.com> * @date: 2018/1/18 上午10:52 * @version: V1.0 */ public interface TeamRepository extends JpaRepository<Team, String> { List<Team> findByNameLike(String name);
參數簡單化
/** * @description: * @author: 程志祥<15610554031@163.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: 程志祥<15610554031@163.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);
生活不易,且行且珍惜,謝謝