Spring Data JPA 从入门到精通~@Param用法

默认情况下,参数是通过顺序绑定在查询语句上的,这使得查询方法对参数位置的重构容易出错。为了解决这个问题,可以使用 @ Param 注解指定方法参数的具体名称,通过绑定的参数名字做查询条件,这样不需要关心参数的顺序,推荐这种做法,比较利于代码重构。

案例 4.9:根据参数进行查询。

public interface UserRepository extends JpaRepository<User, Long> {@Query("select u from User u where u.firstname = :firstname or u.lastname = :lastname")User findByLastnameOrFirstname(@Param("lastname") String lastname,@Param("firstname") String firstname);
}

案例 4.10:根据参数进行查询,top 10 前面说的 query method 关键字照样有用,如下:

public interface UserRepository extends JpaRepository<User, Long> {@Query("select u from User u where u.firstname = :firstname or u.lastname = :lastname")User findTop10ByLastnameOrFirstname(@Param("lastname") String lastname,@Param("firstname") String firstname);
}

提醒:大家通过 @Query 定义自己的查询方法时,建议也用 Spring Data JPA 的 name query 的命名方法,这样下来风格就比较统一了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/496401.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

园子里关于罗辑树与视觉树的文章

http://www.cnblogs.com/YilingLai/archive/2006/12/22/600279.html转载于:https://www.cnblogs.com/refeiner/archive/2009/04/18/1438950.html

专家谈计算机体系架构研究获“图灵奖”

来源&#xff1a;科学网 作者&#xff1a;王佳雯 韩扬眉近日&#xff0c;有着“计算机界的诺贝尔奖”之称的“图灵奖”揭开面纱。国际计算机协会宣布&#xff0c;美国科学家约翰轩尼诗和大卫帕特森获得2017年度图灵奖&#xff0c;以表彰二人开创了一种系统的、可量化的方法用…

编译和使用APUE的源码

From&#xff1a;http://blog.csdn.net/mitesi/article/details/19015397 APUE说明及源码下载地址 &#xff1a;http://www.apuebook.com/ APUE 电子版 PDF 下载地址&#xff1a;http://download.csdn.net/download/freeking101/10012610 1. 介绍 总结&#xff1a;APUE是一本…

java标签用法详解_介绍一个javaWeb自定义标签的用法详解

这篇文章主要介绍了javaWeb自定义标签用法,结合实例形式分析了javaweb自定义标签的功能、定义方法及执行原理,需要的朋友可以参考下本文实例讲述了javaWeb自定义标签用法。分享给大家供大家参考&#xff0c;具体如下&#xff1a;自定义标签创建自定义标签主要用于移除Jsp页面中…

Spring Data JPA 从入门到精通~SpEL表达式的支持

在 Spring Data JPA 1.4 以后&#xff0c;支持在 Query 中使用 SpEL 表达式&#xff08;简介&#xff09;来接收变量。 SpEL 支持的变量 变量名 使用方式 描述 entityName select x from #{#entityName} x 根据指定的Repository自动插入相关的entityName 有两种方式能被解…

由partition看窗口函数

最近要完成一个项目&#xff0c;有一个查询可难住了笔者&#xff0c;无论是子查询还是分组&#xff0c;都没弄出来&#xff0c;还是基础知识不行啊。不过呢&#xff0c;可以查资料&#xff0c;最后用一个窗口函数解决了问题。由于开始的数据库是Access&#xff0c;后来笔者导成…

AI版「盗梦空间」?谷歌大脑「世界模型」可实现在其梦境中对智能体进行训练

图源&#xff1a;pixabay原文来源&#xff1a;arXiv原文链接&#xff1a;https://arxiv.org/pdf/1803.10122.pdf作者&#xff1a;David Ha、Jurgen Schmidhuber「雷克世界」编译&#xff1a;嗯~是阿童木呀、KABUDA我们探索构建通用强化学习环境中的生成式神经网络模型。我们的世…

Linux文件空洞与稀疏文件

From&#xff1a;http://www.topjishu.com/8277.html From&#xff1a;http://blog.csdn.net/clamercoder/article/details/38361815 Linux_File_Hole_And_Sparse_Files 参考unix环境高级编程第三版 54页和90页&#xff01;&#xff01;&#xff01; ( 文件I/O章节 lseek…

Spring Data JPA 从入门到精通~@Modifying修改查询

学习思路一样&#xff0c;我们先看源码&#xff1a; public interface Modifying { //如果配置了一级缓存&#xff0c;这个时候用clearAutomaticallytrue,就会刷新hibernate的一级缓存了&#xff0c; 不然你在同一接口中&#xff0c;更新一个对象&#xff0c;接着查询这个对象…

java volatile修饰引用_关于volatile修饰引用类型的疑惑

volatile修饰引用类型能否保证可见性似乎一直没有一个定论&#xff0c;有的书中说仅能保证引用本身的可见性&#xff0c;下面用两段代码来验证&#xff1a;流程基本为一个线程死循环读取某个引用类型的某个变量的值&#xff0c;另一个线程修改这个值&#xff0c;观察线程是否结…

gridview 简单的分页

allowpaging 设为 true 然后 后台代码为&#xff1a; protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { GridView1.PageIndex e.NewPageIndex; Get_Gridview(); } Get_Gridview();是绑定gridview 的方法 转载于:https…

西人马聂泳忠:打造机器神经系统,成为中国的特斯拉

作者&#xff1a;于绍洋 来源&#xff1a;投资家网经常穿梭于几个城市&#xff0c;一手拉着行李箱&#xff0c;一手忙于回复工作上的事务&#xff0c;这可能已经成为西人马FATRI&#xff08;下称&#xff0c;西人马&#xff09;创始人聂泳忠博士的日常状态。他给人的第一印象…

Linux dd 命令

From&#xff1a;http://www.cnblogs.com/jikexianfeng/p/6103500.html Linux/UNIX: 使用 dd 命令创建 1GB 大小的二进制&#xff1a;http://www.linuxidc.com/Linux/2014-12/110147.htm 菜鸟教程 Linux dd命令&#xff1a;http://www.runoob.com/linux/linux-comm-dd.html …

Ubuntu 20.04 (Focal Fossa) 上安装RabbitMQ和Erlang,并配置管理员,并且修改数据目录

本脚本适用于在Ubuntu 20.04 (Focal Fossa) 上在线快速安装RabbitMQ和Erlang。 快速安装脚本&#xff1a; #!/bin/shsudo apt-get install curl gnupg apt-transport-https -y## Team RabbitMQs main signing key curl -1sLf "https://keys.openpgp.org/vks/v1/by-finge…

javascript indexOf函数

使用方法&#xff1a;strObj.indexOf(str,startIndex[可选]) 程序代码 其中strObj是必选项。String 对象或文字。 str是必选项。要在 String 对象中查找的子字符串。 startIndex是可选项。该整数值指出在 String 对象内开始查找的位置&#xff0c;从0开始。如果省略&#xff0c…

Spring Data JPA 从入门到精通~@Procedure 储存过程的查询方法

我们通过 Procedure 来介绍一下&#xff0c;JPA 对储存过程的支持。 &#xff08;1&#xff09;Procedure 源码如下&#xff1a; public interface Procedure {// 数据库里面储存过程的名称String value() default "";// 数据库里面储存过程的名称String procedure…

Nature 首度揭示大脑传递信息的真正逻辑

我们对于大脑的理解还停留在极为初步的阶段&#xff08;图片来源&#xff1a;Pixabay&#xff09;来源&#xff1a;生物360摘要&#xff1a;我们过去对于大脑处理信息的理解&#xff0c;其实是非常片面和不准确的。今日&#xff0c;一项重量级的研究刊登在了最新一期的《自然》…

Linux 用户 和 用户组 管理 (添加、删除、修改)及说明

From&#xff1a;http://www.cnblogs.com/xd502djj/archive/2011/11/23/2260094.html 鸟哥官网 Linux 帐号管理与 ACL 权限设定&#xff1a;http://linux.vbird.org/linux_basic/0410accountmanager.php 鸟哥官网&#xff08;简体中文&#xff09;&#xff1a;http://cn.linux.…

java+long是什么_Java中long的模运算符是什么? - java

如何在Java中找到两个长数值的模(&#xff05;)&#xff1f;我的代码说“整数太大”&#xff0c;后面跟我要修改的数字。我尝试将其强制转换很长时间&#xff0c;但没有成功。我是否必须将其转换为BigInteger并使用剩下的方法&#xff1f;谢谢。参考方案%运算符确实可以工作很长…

发现一个奇怪的问题: 不能把文件取名为 con

在 XP 系统下不能建立叫 con 的文件! 不知其他朋友也是这样? 转载于:https://www.cnblogs.com/del/archive/2009/04/26/1444175.html