亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JPA中findBy語法規則有哪些

發布時間:2021-11-20 14:36:09 來源:億速云 閱讀:1661 作者:小新 欄目:開發技術

小編給大家分享一下JPA中findBy語法規則有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

JPA中所有findBy語法規則

1、findBy findAllBy的區別

它們之間沒有區別,它們將執行完全相同的查詢,當從方法名稱派生查詢時,Spring Data會忽略All部分。唯一重要的一點是By關鍵字,其后面的任何內容都被視為字段名稱

如 findXXXXXXXXXXXXXByName 實際上==》 findByName

2、JPA中支持的關鍵詞

And:等價于 SQL 中的 and 關鍵字,比如 findByUsernameAndPassword(String user, Striang pwd);

Or:等價于 SQL 中的 or 關鍵字,比如 findByUsernameOrAddress(String user, String addr);

Between:等價于 SQL 中的 between 關鍵字,比如 findBySalaryBetween(int max, int min);

LessThan:等價于 SQL 中的 "<",比如 findBySalaryLessThan(int max);

GreaterThan:等價于 SQL 中的">",比如 findBySalaryGreaterThan(int min);

IsNull:等價于 SQL 中的 "is null",比如 findByUsernameIsNull();

IsNotNull:等價于 SQL 中的 "is not null",比如 findByUsernameIsNotNull();

NotNull:與 IsNotNull 等價;

Like:等價于 SQL 中的 "like",比如 findByUsernameLike(String user);但是有一點需要注意的是,%需要我們自己來寫

NotLike:等價于 SQL 中的 "not like",比如 findByUsernameNotLike(String user);

OrderBy:等價于 SQL 中的 "order by",比如 findByUsernameOrderBySalaryAsc(String user);

Not:等價于 SQL 中的 "! =",比如 findByUsernameNot(String user);

In:等價于 SQL 中的 "in",比如 findByUsernameIn(Collection<String> userList) ,方法的參數可以是 Collection 類型,也可以是數組或者不定長參數;

NotIn:等價于 SQL 中的 "not in",比如 findByUsernameNotIn(Collection<String> userList) ,方法的參數可以是 Collection 類型,也可以是數組或者不定長參數;

JPA findBy 語法總結

1、JPA同時查詢兩個屬性

其中一個是embedded class的屬性

findByIdageAndTime(int age, Date time)

2、表格匯總

JPA中findBy語法規則有哪些

JPA中findBy語法規則有哪些

3、Spring Data JPA框架在進行方法名解析時

會先把方法名多余的前綴截取掉,比如 find、findBy、read、readBy、get、getBy,然后對剩下部分進行解析。

4、JPA的NamedQueries

在實體類上使用@NamedQuery,示例如下:

@NamedQuery(name = "UserModel.findByAge",query = "select o from UserModel o where o.age >= ?1")

在自己實現的DAO的Repository接口里面定義一個同名的方法,示例如下:

public List findByAge(int age);

然后就可以使用了,Spring會先找是否有同名的NamedQuery,如果有,那么就不會按照接口定義的方法來解析。

5、JPQL查詢

  @Query("from SysUser u where u.nickname=:nickname")
    SysUser findUser(@Param("nickname") String nickname);
    @Query("from SysUser u where u.nickname like  %:nickname% order by u.fans desc")
    List<SysUser> findUsers(@Param("nickname") String nickname);

以上是“JPA中findBy語法規則有哪些”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东方市| 安新县| 普兰县| 贡嘎县| 尖扎县| 花莲县| 彭阳县| 芒康县| 理塘县| 江安县| 怀集县| 淮北市| 涿州市| 钟山县| 抚远县| 勐海县| 穆棱市| 九龙坡区| 东阳市| 桃园县| 福清市| 遵义县| 方山县| 仪征市| 剑川县| 桃园市| 故城县| 牙克石市| 福鼎市| 郁南县| 罗山县| 聊城市| 图们市| 新昌县| 商都县| 策勒县| 重庆市| 池州市| 泽库县| 武城县| 墨脱县|