簡體   English   中英

如何在沒有查詢的情況下在 spring 引導中編寫更新語句?

[英]How to write update statement in spring boot without query?

我正在處理 spring 啟動,我必須在不同的表上運行大量更新和刪除操作。 是否有一個庫或接口可以幫助我概括查詢所以我不必一次又一次地編寫它。

這是我的代碼

    public int updatetable1(Table table1)
    {
        return namedParameterJdbcTemplate.update("update table1 set sname = :name," +
                "email=:email, mobile=:mobile",new BeanPropertySqlParameterSource(table1));
    }

Spring 數據存儲庫抽象中的中央接口是存儲庫。 它需要域 class 來管理,並且域 class 的 ID 類型為 arguments。 此接口主要用作標記接口,以捕獲要使用的類型並幫助您發現擴展此接口的接口。 CrudRepository 為正在管理的實體 class 提供復雜的 CRUD 功能。

例子。 CrudRepository 接口

public interface CrudRepository<T, ID> extends Repository<T, ID> {

  <S extends T> S save(S entity);      

  Optional<T> findById(ID primaryKey); 

  Iterable<T> findAll();               

  long count();                        

  void delete(T entity);               

  boolean existsById(ID primaryKey);   

  // … more functionality omitted.
}
  1. 保存給定的實體。
  2. 返回由給定標識的實體
  3. ID。 返回所有實體。 返回實體的數量。
  4. 刪除給定的實體。
  5. 指示具有給定 ID 的實體是否存在。

Spring 數據

Spring 中的派生查詢方法

派生方法名稱有兩個主要部分,由第一個 By 關鍵字分隔:

List<User> findByName(String name)

第一部分(如查找)是介紹人,rest(如 ByName)是標准。

Spring 數據 JPA 支持查找、讀取、查詢、計數和獲取。 因此,例如,我們可以完成 queryByName 和 Spring 數據行為相同。

我們還可以使用 Distinct、First 或 Top 來刪除重復項或限制我們的結果集:

List<User> findTop3ByAge()

條件部分包含查詢的特定於實體的條件表達式。 我們可以將條件關鍵字與實體的屬性名稱一起使用。 我們還可以將表達式與 And 和 Or 連接起來。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM