Review and edit the Abstract, Getting Started, Introduction and Using Spring Boot chapters.
This commit is contained in:
@@ -46,72 +46,75 @@ toc::[]
|
||||
Welcome to _Spring Boot for Apache Geode & Pivotal GemFire_.
|
||||
|
||||
Spring Boot for Apache Geode & Pivotal GemFire provides the convenience of Spring Boot's _convention over configuration_
|
||||
approach using _auto-configuration_ with the Spring Framework's powerful abstractions and programming model to simplify
|
||||
the development of Apache Geode or Pivotal GemFire applications in a Spring enabled context.
|
||||
approach using _auto-configuration_ with the Spring Framework's powerful abstractions and highly consistent programming
|
||||
model to truly simplify the development of Apache Geode or Pivotal GemFire applications in a Spring context.
|
||||
|
||||
Secondarily, Spring Boot for Apache Geode/Pivotal GemFire strives to provide developers with a consistent experience
|
||||
when building and running Spring-powered, Apache Geode/Pivotal GemFire applications, whether a developer's Spring Boot
|
||||
applications are running locally, or in a managed environment, such as https://pivotal.io/platform[Pivotal CloudFoundry] (PCF).
|
||||
Secondarily, Spring Boot for Apache Geode & Pivotal GemFire aims to give developers a consistent experience whether
|
||||
building and running Spring Boot, Apache Geode/Pivotal GemFire applications locally or in a managed environment,
|
||||
such as with https://pivotal.io/platform[Pivotal CloudFoundry] (PCF).
|
||||
|
||||
This project is a continuation and logical extension of the work that began in Spring Data for Apache Geode & Pivotal GemFire
|
||||
with the relatively new {spring-data-geode-docs-html}/#bootstrap-annotation-config[Annotation-based Configuration Model]
|
||||
and the goals set forth with that: _enable application developers to *get up and running* as *quickly* and as *easily*
|
||||
as possible_. In fact, Spring Boot for Apache Geode/Pivotal GemFire builds on the very
|
||||
{spring-data-geode-docs-html}/#bootstrap-annotation-config[foundation]
|
||||
built into Spring Data for Apache Geode/Pivotal GemFire (SDG) as of the Spring Data *Kay* _Release Train_.
|
||||
This project is a continuation and logical extension to Spring Data for Apache Geode/Pivotal GemFire's
|
||||
{spring-data-geode-docs-html}/#bootstrap-annotation-config[Annotation-based Configuration Model] and the goals
|
||||
set forth with that: _enable application developers to *get up and running* as *quickly* and as *easily*
|
||||
as possible_. In fact, Spring Boot for Apache Geode/Pivotal GemFire builds on this very
|
||||
{spring-data-geode-docs-html}/#bootstrap-annotation-config[foundation] cemented in
|
||||
Spring Data for Apache Geode/Pivotal GemFire
|
||||
(SDG footnoteref:[SDG, Spring Data for Apache Geode and Spring Data for Pivotal GemFire are commonly known as SDG.])
|
||||
since the Spring Data *Kay* Release Train.
|
||||
|
||||
[[introduction]]
|
||||
== Introduction
|
||||
|
||||
Spring Boot for Apache Geode & Pivotal GemFire automatically applies _auto-configuration_ for several key
|
||||
application concerns, or _Use Cases_, including, but not limited to:
|
||||
Spring Boot for Apache Geode & Pivotal GemFire automatically applies _auto-configuration_ to several key
|
||||
application concerns (_Use Cases_) including, but not limited to:
|
||||
|
||||
* _Look-Aside Caching_, using either Apache Geode or Pivotal GemFire as the caching provider in
|
||||
{spring-framework-docs}/integration.html#cache[Spring's Cache Abstraction].
|
||||
* {wikipedia-docs}/System_of_record[_System of Record_ (SOR)], persisting application state in Apache Geode
|
||||
or Pivotal GemFire consistently and reliably using {spring-data-commons-docs-html}/#repositories[Spring Data Repositories].
|
||||
* _Distributed Computations_, run with Apache Geode/Pivotal GemFire's
|
||||
{apache-geode-docs}/developing/function_exec/chapter_overview.html[Function framework],
|
||||
conveniently implemented and executed with Spring Data for Apache Geode/Pivotal GemFire
|
||||
{spring-data-geode-docs-html}/#function-annotations[POJO, annotation-based Function Executions & Implementations].
|
||||
* _Continuous Queries_, expressing interests in a stream of events, where applications are able to react to and process
|
||||
changes to data in near real-time using Apache Geode/Pivotal GemFire {apache-geode-docs}/developing/continuous_querying/chapter_overview.html[Continuous Query (CQ)].
|
||||
Process handlers can be defined as simple Message-Driven POJOs (MDP) using Spring's {spring-framework-docs}/integration.html#jms-mdp[Message Listener Container],
|
||||
which is {spring-data-geode-docs-html}/#bootstrap-annotation-config-continuous-queries[configurable] and {spring-data-geode-docs-html}/#apis:continuous-query[implemented]
|
||||
in Spring Data for Apache Geode/Pivotal GemFire CQ support.
|
||||
* _Data Serialization_ with Apache Geode/Pivotal GemFire {apache-geode-docs}/developing/data_serialization/gemfire_pdx_serialization.html[PDX]
|
||||
for which Spring Data for Apache Geode/Pivotal GemFire provides first-class {spring-data-geode-docs-html}/#bootstrap-annotation-config-pdx[configuration]
|
||||
and {spring-data-geode-docs-html}/#mapping.pdx-serializer[support].
|
||||
* _Security_, encompassing all aspects of the term, including
|
||||
{apache-geode-docs}/managing/security/authentication_overview.html[Authentication] / {apache-geode-docs}/managing/security/authorization_overview.html[Authorization]
|
||||
as well as Transport Layer Security (TLS) using Apache Geode/Pivotal GemFire's {apache-geode-docs}/managing/security/ssl_overview.html[Secure Socket Layer (SSL)].
|
||||
And, once again, Spring Data for Apache Geode/Pivotal GemFire has you covered with both
|
||||
{spring-data-geode-docs-html}/#bootstrap-annotation-config-security[Auth] and {spring-data-geode-docs-html}/#bootstrap-annotation-config-ssl[SSL].
|
||||
* {wikipedia-docs}/System_of_record[_System of Record_ (SOR)], persisting application state reliably in Apache Geode
|
||||
or Pivotal GemFire using {spring-data-commons-docs-html}/#repositories[Spring Data Repositories].
|
||||
* _Transactions_, managing application state consistently with {spring-framework-docs}/data-access.html#transaction[Spring Transaction Management]
|
||||
and SDGfootnoteref:[SDG, Spring Data for Apache Geode and Spring Data for Pivotal GemFire are commonly known as SDG.]
|
||||
support for both {spring-data-geode-docs-html}/#apis:transaction-management[Local Cache]
|
||||
and {spring-data-geode-docs-html}/#apis:global-transaction-management[Global JTA] Transactions.
|
||||
* _Distributed Computations_, run with Apache Geode/Pivotal GemFire's {apache-geode-docs}/developing/function_exec/chapter_overview.html[Function Executions] framework
|
||||
and conveniently implemented and executed with SDGfootnoteref:[SDG] {spring-data-geode-docs-html}/#function-annotations[POJO-based, annotation support for Functions].
|
||||
* _Continuous Queries_, expressing interests in a stream of events, where applications are able to react to and process changes to data in near real-time
|
||||
using Apache Geode/Pivotal GemFire {apache-geode-docs}/developing/continuous_querying/chapter_overview.html[Continuous Query (CQ)].
|
||||
Handlers are defined in simple Message-Driven POJOs (MDP) using Spring's {spring-framework-docs}/integration.html#jms-mdp[Message Listener Container],
|
||||
which has been {spring-data-geode-docs-html}/#apis:continuous-query[extended] in, and is {spring-data-geode-docs-html}/#bootstrap-annotation-config-continuous-queries[configurable]
|
||||
using SDGfootnoteref:[SDG] CQ support.
|
||||
* _Data Serialization_ with Apache Geode/Pivotal GemFire {apache-geode-docs}/developing/data_serialization/gemfire_pdx_serialization.html[PDX],
|
||||
including first-class {spring-data-geode-docs-html}/#bootstrap-annotation-config-pdx[configuration]
|
||||
and {spring-data-geode-docs-html}/#mapping.pdx-serializer[support] in SDGfootnoteref:[SDG].
|
||||
* _Security_, including {apache-geode-docs}/managing/security/authentication_overview.html[Authentication]
|
||||
& {apache-geode-docs}/managing/security/authorization_overview.html[Authorization] as well as Transport Layer Security (TLS)
|
||||
using Apache Geode/Pivotal GemFire's {apache-geode-docs}/managing/security/ssl_overview.html[Secure Socket Layer (SSL)].
|
||||
Once again, SDGfootnoteref:[SDG] includes first-class support for configuring {spring-data-geode-docs-html}/#bootstrap-annotation-config-security[Auth]
|
||||
and {spring-data-geode-docs-html}/#bootstrap-annotation-config-ssl[SSL].
|
||||
|
||||
While Spring Data for Apache Geode & Pivotal GemFire offers a simple, convenient and declarative approach for
|
||||
configuring all these really powerful Apache Geode/Pivotal GemFire features, Spring Boot for Apache Geode
|
||||
While Spring Data for Apache Geode & Pivotal GemFire offers a simple, very convenient and declarative approach
|
||||
to configure all these extremely powerful Apache Geode/Pivotal GemFire features, Spring Boot for Apache Geode
|
||||
& Pivotal Gemfire makes this even easier to do as we will explore throughout this Reference Guide.
|
||||
|
||||
[[getting-started]]
|
||||
== Getting Started
|
||||
|
||||
In order to be as effective as possible and productive with Spring Boot for Apache Geode/Pivotal GemFire, it is helpful
|
||||
to understand the foundation on which this project was built.
|
||||
In order to be immediately productive and as effective as possible using Spring Boot for Apache Geode/Pivotal GemFire,
|
||||
it is helpful to understand the foundation on which this project was built.
|
||||
|
||||
Of course, our story begins with the core Spring Framework and specifically the foundation laid down by
|
||||
the Spring container's {spring-framework-docs}/core.html#spring-core[core technologies and concepts].
|
||||
Of course, our story begins with the Spring Framework and the {spring-framework-docs}/core.html#spring-core[core technologies and concepts]
|
||||
built into the Spring container.
|
||||
|
||||
Then, our journey continues with the extensions built into Spring Data for Apache Geode & Pivotal GemFire (SDG) to truly
|
||||
simplify the development of Apache Geode & Pivotal GemFire applications in a Spring context, using Spring's powerful
|
||||
and highly consistent programming model.
|
||||
|
||||
This part of the story was greatly enhanced in Spring Data *Kay*, with SDG's new
|
||||
{spring-data-geode-docs-html}/#bootstrap-annotation-config[annotation-based configuration model].
|
||||
Then, our journey continues with the extensions built into Spring Data for Apache Geode & Pivotal GemFire
|
||||
(SDGfootnoteref:[SDG, Spring Data for Apache Geode and Spring Data for Pivotal GemFire are commonly known as SDG.])
|
||||
to truly simplify the development of Apache Geode & Pivotal GemFire applications in a Spring context, using Spring's
|
||||
powerful abstractions and highly consistent programming model. This part of the story was greatly enhanced in
|
||||
Spring Data *Kay*, with SDGfootnoteref:[SDG] new {spring-data-geode-docs-html}/#bootstrap-annotation-config[annotation-based configuration model].
|
||||
Though this new configuration approach using annotations provides sensible defaults out-of-the-box, its use
|
||||
is also very explicit and it assumes nothing. That is, you still must tell SDG what you want.
|
||||
is also very explicit and assumes nothing. That is, you still must tell SDGfootnoteref:[SDG] what you want.
|
||||
|
||||
Next, we venture into Spring Boot and all of its wonderfully expressive and highly opinionated "_convention over configuration_"
|
||||
approach for getting the most out of your Spring, Apache Geode or Pivotal GemFire based applications in the quickest/easiest way
|
||||
approach for getting the most out of your Spring, Apache Geode/Pivotal GemFire based applications in the quickest/easiest way
|
||||
possible. We accomplish this by combining Spring Data for Apache Geode/Pivotal GemFire's
|
||||
{spring-data-geode-docs-html}/#bootstrap-annotation-config[annotation-based configuration] with Spring Boot's
|
||||
{spring-boot-docs-html}/#using-boot-auto-configuration[auto-configuration] to get you up and running even faster
|
||||
@@ -150,7 +153,7 @@ TIP: To use Pivotal GemFire in place of Apache Geode, simply change the `artifac
|
||||
to `spring-gemfire-starter`.
|
||||
|
||||
ifeval::["{version-snapshot}" == "true"]
|
||||
Since we are using a SNAPSHOT version, we need to add the _Spring_ Snapshot Maven Repository.
|
||||
Since you are using a SNAPSHOT version, you need to add the _Spring_ Snapshot Maven Repository.
|
||||
If you are using _Maven_, include the following `repository` declaration in your `pom.xml`:
|
||||
|
||||
.Maven
|
||||
@@ -176,7 +179,7 @@ repositories {
|
||||
endif::[]
|
||||
|
||||
ifeval::["{version-milestone}" == "true"]
|
||||
Since we are using a Milestone version, we need to add the _Spring_ Milestone Maven Repository.
|
||||
Since you are using a Milestone version, you need to add the _Spring_ Milestone Maven Repository.
|
||||
If you are using _Maven_, include the following `repository` declaration in your `pom.xml`:
|
||||
|
||||
.Maven
|
||||
|
||||
Reference in New Issue
Block a user