spring data 是持久層通用解決方案,支援 關係型資料庫 oracle、mysql、非關係型資料庫nosql、map-reduce 框架、雲基礎資料服務 、搜尋服務
spring data 就是 spring 官方提供一套 資料層 綜合解決方案 !
spring data jpa 框架,主要針對的就是 spring 唯一沒有簡化到的業務邏輯**,至此,開發者連僅剩的實現持久層業務邏輯的工作都省了,唯一要做的,就只是宣告持久層的介面,其他都交給 spring data jpa 來幫你完成!
2.讓持久層介面 dao(以userdao) 繼承 repository 介面。
該介面使用了泛型,需要為其提供兩個型別:第乙個為該介面處理的域物件型別,第二個為該域物件的主鍵型別。 如下:
spring data jpa 風格的持久層介面:
public
inte***ce
userdao
extends
repository
不需要userdao的實現類,框架會為我們完成業務邏輯。
3.在 spring 配置檔案中啟用掃瞄並自動建立**的功能。
<
-- 需要在 >
標籤中增加對 jpa 命名空間的引用 -->
<
jpa:repositories
base-package
="footmark.springdata.jpa.dao"
entity-manager-factory-ref
="entitymanage***ctory"
transaction-manager-ref
="transactionmanager"/>
4.測試**。
public
inte***ce
userdao
extends
repository
5.總結
使用 spring data jpa 進行持久層開發大致需要的三個步驟:
1.宣告持久層的介面,該介面繼承 repository,repository 是乙個標記型介面,它不包含任何方法,當然如果有需要,spring data 也提供了若干 repository 子介面,其中定義了一些常用的增刪改查,以及分頁相關的方法。
2.在介面中宣告需要的業務方法。spring data 將根據給定的策略來為其生成實現**。
3.在 spring 配置檔案中增加一行宣告,讓 spring 為宣告的介面建立**物件。配置了 後,spring 初始化容器時將會掃瞄 base-package 指定的包目錄及其子目錄,為繼承 repository 或其子介面的介面建立**物件,並將**物件註冊為 spring bean,業務層便可以通過 spring 自動封裝的特性來直接使用該物件。
linux kail recon ng框架的介紹
recon ng是由python編寫的乙個開源的web偵察 資訊收集 框架。recon ng非常強大,它可以自動的進行資訊收集和網路偵察。linux kail中recon ng的安裝 git clone啟動時它會提示你 key not set,也就是api沒設定,因為呼叫裡面的某些外部服務模組的時候...
Linux linux awk陣列操作詳細介紹
用awk進行文字處理,少不了就是它的陣列處理。那麼awk陣列有那些特點,一般常見運算又會怎麼樣呢。我們先看下下面的一些介紹,結合例子我們會講解下它的不同之處。在 awk 中陣列叫做關聯陣列 associative arrays 因為下標記可以是數也可以是串。awk 中的陣列不必提前宣告,也不必宣告大...
191122 python split詳細介紹
作用 通過指定分隔符對字串進行切片,並返回分割後的列表。通過split分割的都是列表。可以不指定分割符,預設為空格 可以指定分隔符進行分割 可以指定分割次數 分割後去哪一塊 不指定分隔符,預設使用空格,返回乙個列表 mystr mystr.split 以 為分隔符 以 為分隔符,分割1次 以 為分隔...