JPA:方法命名规则
Posted ABin-阿斌
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JPA:方法命名规则相关的知识,希望对你有一定的参考价值。
我是 ABin-阿斌:写一生代码,创一世佳话,筑一览芳华。 如果小伙伴们觉得文章有点 feel ,那就点个赞再走哦。
一、注意:
- 下面这些方法都是查询操作,方法命名中如果 find 看着可读性不强可以改成 get
- 这些方法命名,可以让 JPA 底层自动帮我们生成 SQL ,适用于单表、非复杂 SQL 语句实现
- 如果想要查询 SQL 语句,那么我们可以在日志打印中查看。记得在 YML 中开启日志记录
关键字 | 方法命名 | sql where字句 |
---|---|---|
And | findByNameAndPwd | where name = ? and pwd= ? |
Or | findByNameOrSex | where name = ? or sex =? |
Between | findByIdBetween | where id between ? and ? |
LessThan | findByIdLessThan | where id <? |
LessThanEqual | findByIdLessThanEqual | where id <=? |
GreaterThan | findByIdGreaterThan | where id > ? |
GreaterThanEqual | findByIdGreaterThanEqual | where id >= ? |
After | findByIdAfter | where id > ? |
Before | find ByIdBefore | where id < ? |
IsNull | findByNameIsNull | where name is null |
IsNotNull,NotNull | findByNameIsNotNull | where name is not null |
NotNull | findByNameNotNull | where name is not null |
Like | findByNameLike | where name like ? |
NotLike | findByNameNotLike | where name not like ? |
StartingWith | findByNameStartingWith | where name like ‘?%’ |
EndingWith | findByNameEndingWith | where name like ‘%?’ |
Containing | findByNameContaining | where name like ‘%?%’ |
OrderBy | findByIdOrderByAgeDescAndIdAsc | where id = ? order by age desc,id asc |
Not | findByNameNot | where name <> ? |
In | findByNameIn | where name in (?) |
NotIn | findByIdNotIn | where id not in (?) |
True | findByDelStatusTrue | where delStatus = true |
False | findByDelStatusFalse | where delStatus = false |
IgnoreCase | findByNameIgnoreCase | where UPPER(name) = UPPER(?) |
二、更多细节
- 更加详细的 JPA 相关知识可以看我的这篇文章:JPA的具体介绍与使用 或这篇文章 JAP的深入了解与优雅操作
以上是关于JPA:方法命名规则的主要内容,如果未能解决你的问题,请参考以下文章
SpringDataJAP:黑马 SpringData JPA 学习笔记
更新 Spring Data JPA 之数据表名的命名规则为驼峰命名法
Nginx系列:Nginx + keepalived 实现高可用 + 防盗链 + 动静分离