模糊查询: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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 久坐提醒 android wear,这五个理由告诉你为什么需要一块智能手表![通俗易懂]

    久坐提醒 android wear,这五个理由告诉你为什么需要一块智能手表![通俗易懂]来源:驱动号作者:2019-06-14/17:15访问量:摘要智能化可穿戴设备现如今已经普及,如果你还没有一块智能手表,现在是时候戴一下了。智能手表与智能手机相比,带来的都是潜在性的好处。虽然智能手表并不能保证你一定会多运动,也不能保证你一定会少玩手机。但是它可以提供一种让生活更好的选择,这种选择可能就足以改变我们的生活。过去的几年,关于智能手表的讨论都是”要不要买一款智能手表”,而…

    2022年9月28日
    3
  • 决策树原理及使用_虹吸原理图解

    决策树原理及使用_虹吸原理图解1.树模型和线性模型的区别树形模型是一个一个特征进行处理线性模型是所有特征给予权重相加得到一个新的值2.什么是决策树所谓决策树,就是一个类似于流程图的树形结构,树内部的每一个节点代表的是对一个特征的测试,树的分支代表该特征的每一个测试结果,而树的每一个叶子节点代表一个类别。树的最高层是就是根节点。下图即为一个决策树的示意描述,内部节点用矩形表示,叶子节点用椭圆表示。3.学习过程**特征选择:**特征选择是指从训练数据中众多的特征中选择一个特征作为当前节点的分裂标准,如何选

    2025年9月5日
    6
  • 目前主流的app开发方式

    目前主流的app开发方式移动应用开发三种方式比较随着H5标准的发布以及推广,使得移动应用的开发也受到了很大影响,出于效率、成本等等的原因,移动应用的开发不在完全依赖于“原生”。今天就简单总结一下目前的三大主流移动应用开发类型。APP,一般认为是mobileapplication,也就是移动移动应用程序。1.NativeApp:本地应用程序(原生App)NativeApp是一种基于智能手…

    2022年5月30日
    36
  • InvocationHandler中invoke方法中的第一个参数proxy的用途

    InvocationHandler中invoke方法中的第一个参数proxy的用途最近在研究 Java 的动态代理时对 invoke 函数的第一个参数一直不理解它的用处 某度搜索也搜不出结果 最后终于在 stackoverflo 上找到了答案 这是原文的链接 http stackoverflo com questions understandin proxy arguments of the invoke method of java lang reflec

    2025年8月19日
    0
  • Windows系统日志分析_windows日志命令

    Windows系统日志分析_windows日志命令这篇文章记录windows事件和日志的对应关系。

    2022年9月8日
    4
  • html一个汉字空格占位_html表示空格的特殊符号

    html一个汉字空格占位_html表示空格的特殊符号&amp;#32;==普通的英文半角空格&amp;#160;==&amp;nbsp;==&amp;#xA0;==no-breakspace(普通的英文半角空格但不换行)&amp;#12288;==中文全角空格(一个中文宽度)&amp;#8194;==&amp;ensp;==en空格(半个中文宽度)&amp;#8195;==&amp;emsp;==em空格…

    2022年10月5日
    2

发表回复

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

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