模糊查询:Spring Data JPA 如何进行模糊查询(LIKE) ?「建议收藏」

模糊查询:Spring Data JPA 如何进行模糊查询(LIKE) ?「建议收藏」SpringMVC+SpringDataJPA+模糊查询为了方便起见,service直接忽略,方便理解。一.方法一1.Controller层:方法参数如下,一定要加”%”+name+”%”/***@description:*@author:czx<15610554031@163.com>*@date:2018/1/22…

大家好,又见面了,我是你们的朋友全栈君。

Spring MVC + Spring Data JPA+模糊查询

为了方便起见,service直接忽略,方便理解。

一. 方法一

1.  Controller层:

  方法参数如下,一定要加 “%”+name+”%”

/**
 * @description:
 * @author: czx<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: czx<15610554031@163.com>
 * @date: 2018/1/18 上午10:52
 * @version: V1.0
 */

public interface TeamRepository extends JpaRepository<Team, String> {

    
    List<Team> findByNameLike(String name);

 

 

二. 方法二

 1. Controller:

 

 参数简单化

 

/**
 * @description:
 * @author: czx<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: czx<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);

 

      如有问题,欢迎邮件来访,15610554031@163.com,谢谢。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/139304.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • css属性margin是什么意思_css中position的属性

    css属性margin是什么意思_css中position的属性深入理解css中的margin属性之前我一直认为margin属性是一个非常简单的属性,但是最近做项目时遇到了一些问题,才发现margin属性还是有一些“坑”的,下面我会介绍margin的基本知识以及

    2022年8月1日
    5
  • android 读取本地数据库db文件(Android sqlite)

    android 读取本地数据库db文件(Android sqlite)我们知道Android中有四种数据存储方式:SharedPreference存储 contentprovider SQLite数据库存储 文件存储今天我们主要说本地数据库sqlite这种方式,实现读取一个本地数据库db文件的功能。为了方便说明,我举个例子来讲:我们创建一个本地数据库,里面包含两张表一个用户表user一个性别表gender要求:1.将用户表中用户查…

    2022年5月31日
    51
  • Vue路由懒加载_vuerouter路由懒加载

    Vue路由懒加载_vuerouter路由懒加载使用Vue路由懒加载时报了以下错误:经过百度发现,出现该问题的原因是:import属于异步引用组件,需要特殊的babel-loader处理解决办法:安装babel用来编译import异步引用方法的模块babel-plugin-syntax-dynamic-importcnpminstallbabel-plugin-syntax-dynamic-import-D在.b…

    2025年6月2日
    5
  • singleTop和singleTask有什么区别

    singleTop和singleTask有什么区别文章来源:http://blog.csdn.net/leon8/article/details/6844397singleTop要求如果创建intent的时候栈顶已经有要创建的Activity的实例,则将intent发送给该实例,而不发送给新的实例。(注意是栈顶,不在栈顶照样创建新实例!)singleTask模式:当intent到来,需要创建singleTask模式

    2022年6月26日
    42
  • Codeforces 459E Pashmak and Graph(dp+贪婪)

    Codeforces 459E Pashmak and Graph(dp+贪婪)

    2022年1月5日
    43
  • extern用法总结!

    extern用法总结!

    2021年12月1日
    43

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号