官术网_书友最值得收藏!

1.3 了解Spring Data

1.3.1 Spring Data介紹

Spring Data項目是從2010年發展起來的,從創立之初Spring Data就想提供一個大家熟悉的、一致的、基于Spring的數據訪問編程模型,同時仍然保留底層數據存儲的特殊特性。它可以輕松地讓開發者使用數據訪問技術,包括關系數據庫、非關系數據庫(NoSQL)和基于云的數據服務。

Spring Data Common是Spring Data所有模塊的公用部分,該項目提供跨Spring數據項目的共享基礎設施。它包含了技術中立的庫接口以及一個堅持java類的元數據模型。

Spring Data不僅對傳統的數據庫訪問技術JDBC、Hibernate、JDO、TopLick、JPA、Mybitas做了很好的支持、擴展、抽象、提供方便的API,還對NoSQL等非關系數據做了很好的支持,包括MongoDB、Redis、Apache Solr等。

1.3.2 Spring Data的子項目

主要子項目(Main modules)如下:

  • Spring Data Commons
  • Spring Data Gemfire
  • Spring Data JPA
  • Spring Data KeyValue
  • Spring Data LDAP
  • Spring Data MongoDB
  • Spring Data REST
  • Spring Data Redis
  • Spring Data for Apache Cassandra
  • Spring Data for Apache Solr

社區支持的子項目(Community modules):

  • Spring Data Aerospike
  • Spring Data Couchbase
  • Spring Data DynamoDB
  • Spring Data Elasticsearch
  • Spring Data Hazelcast
  • Spring Data Jest
  • Spring Data Neo4j
  • Spring Data Vault

其他子項目(Related modules):

  • Spring Data JDBC Extensions
  • Spring for Apache Hadoop
  • Spring Content

當然,還有許多開源社區做出的貢獻,比如Mybitas等。

市面上主要的子項目如圖1-3所示。

圖1-3

1.3.3 Spring Data操作的主要特性

Spring Data項目旨在為大家提供一種通用的編碼模式。數據訪問對象實現了對物理數據層的抽象,為編寫查詢方法提供了方便。通過對象映射,實現域對象和持續化存儲之間的轉換,而模板提供的是對底層存儲實體的訪問實現,如圖1-4所示。操作上主要有如下特征:

  • 提供模板操作,如Spring Data Redis和Spring Data Riak。
  • 強大的Repository和定制的數據存儲對象的抽象映射。
  • 對數據訪問對象的支持(Auting等)。

圖1-4

主站蜘蛛池模板: 科尔| 万州区| 许昌县| 商水县| 光山县| 化州市| 揭阳市| 顺平县| 乌兰察布市| 崇文区| 隆安县| 商城县| 瑞昌市| 綦江县| 北安市| 法库县| 大安市| 黄石市| 阜新市| 虎林市| 榆社县| 上饶县| 壶关县| 香格里拉县| 左贡县| 平利县| 木里| 射阳县| 保德县| 渑池县| 伽师县| 汨罗市| 马公市| 额济纳旗| 汝城县| 平遥县| 沿河| 恩施市| 威海市| 安陆市| 肇庆市|