What you will learn in Spring in Action, Sixth Edition
Chapter by chapter
Concepts explained in this book
- MonoMono is Project Reactor's publisher type for asynchronously emitting zero or one element, including no element when parameterized with Void.
- Spring Boot starterA Spring Boot starter is a dependency descriptor that transitively brings together libraries needed for a particular application capability.
- authorization serverAn authorization server is a system that authenticates clients or resource owners and issues access tokens for authorized access to protected resources.
- API keyAn access token is a credential that authorizes a client to access protected resources on behalf of a user or other resource owner.
- flatmapflatMap is a Project Reactor operator that maps each source element to a publisher and merges the resulting publishers into one sequence.
- Spring BootA Spring application built with Spring Boot, typically packaged with the components needed to run as a self-contained application.
- resource serverA resource server is a server that protects resources by validating access tokens and enforcing their scopes before serving requests.
- authorization code flowAn OAuth2 flow in which a client exchanges a short-lived authorization code for an access token after the resource owner grants consent.
- application propertiesapplication.properties is a conventional Spring Boot configuration file that expresses application settings as properties.
- MessageConverterMessageConverter is a Spring interface for converting between application objects and JMS Message objects.
- messageAn integration message is a data-bearing unit that moves through components of an integration flow.
- repository patternA repository interface is an interface that declares data-access operations for an entity while leaving their persistence implementation to a supporting framework.
- application contextA Spring container that creates, configures, and manages an application's beans, dependencies, and runtime configuration.
- Spring Boot autoconfigurationA Spring Boot mechanism that conditionally configures application components based on the classpath, properties, environment, and other application conditions.
- mapmap is a Project Reactor operator that transforms each value emitted by a reactive publisher into another value while preserving the publisher type.
- subscribesubscribe is a Project Reactor operation that attaches a subscriber to a publisher and initiates signal consumption.
- integration flowAn integration flow is an ordered sequence of messaging components that receives, transforms, routes, or sends data between an application and external resources.
- StepVerifierStepVerifier is a Project Reactor testing utility that subscribes to a Publisher and verifies its emitted signals and completion behavior.
- taketake is a Project Reactor operator that limits the number of elements emitted by a publisher and then completes.
- transformer interfaceGenericTransformer is a Spring Integration functional interface for transforming a message payload or message into another value.
- Java DSLJava DSL is a Spring Integration domain-specific language expressed through Java APIs for declaratively defining integration flows.
- JmsTemplateJmsTemplate is a Spring API that simplifies JMS message production and consumption by managing messaging boilerplate and exceptions.
- component scanningA Spring technique that discovers eligible application components on the classpath and registers them as beans in the application context.
- Actuator endpointAn Actuator endpoint is a Spring Boot Actuator management interface that exposes operational data or operations through supported communication mechanisms.
- controllerA controller class is a web-application component that receives and handles client requests.
- Spring InitializrA service and project-generation tool that creates initial Spring projects from selected metadata, dependencies, and framework versions.
- Spring Data CassandraSpring Data Cassandra is a Spring Data project that provides repository-based persistence for Cassandra databases.
- Spring Boot Maven pluginThe Spring Boot Maven plugin integrates Spring Boot application packaging and execution tasks into Maven builds.
- Spring Authorization ServerSpring Authorization Server is a Spring project that provides implementation components for building an OAuth2 authorization server.
- RabbitMQRabbitMQ is an open-source message broker that implements the Advanced Message Queuing Protocol and routes messages between producers and consumers.
- handlerA Spring Integration handler contract for processing an incoming message.
- channelA message channel is a Spring Integration messaging destination through which messages are passed between components in an integration flow.
- refresh tokenA refresh token is a credential that a client presents to an authorization server to obtain a new access token after the current one expires.
- Java configurationApplication configuration specified directly by the developer rather than inferred automatically by the framework.
- Spring Data R2DBCSpring Data R2DBC is a Spring Data project that provides repository-based persistence for relational databases through the Reactive Relational Database Connectivity API.
- Spring Data JDBCSpring Data JDBC is a Spring Data project that provides repository abstractions for persisting objects through JDBC without requiring a full object-relational mapping framework.
- JAR fileA JAR file is a Java Archive that packages compiled classes, resources, and metadata for distribution or execution.
- producerA producer is a messaging client that creates and sends messages to a destination.
- endpointA REST endpoint is an addressable HTTP interface through which a client accesses a resource or operation according to REST principles.
- @modelattribute@ModelAttribute is a Spring MVC annotation that binds request data to a model or method parameter and exposes the resulting object to a controller method.
- Taco CloudA sample online Spring application for ordering tacos created in this book.
- MessagePostProcessorMessagePostProcessor is a Spring JMS callback interface that modifies a Message after conversion and before sending.
- filteringA reactive filter is a Project Reactor operator that emits only source elements satisfying a predicate.
- RabbitTemplateRabbitTemplate is a Spring AMQP API element that provides operations for sending and receiving messages through RabbitMQ.
- RSocketRSocket is a binary application protocol that supports reactive interaction patterns including request-response, request-stream, and fire-and-forget communication.
- @transient@Transient is a Spring Data MongoDB annotation that excludes a domain property from document persistence.
- CrudRepositoryCrudRepository is a Spring Data repository interface that provides generic create, read, update, and delete operations for persistent domain objects.
- Spring Boot ActuatorSpring Boot Actuator is a Spring Boot module that exposes operational and management information about a running application.
- R2DBCR2DBC is a specification and API for nonblocking reactive connectivity to relational databases.
- Flux.fromIterable()Flux.fromIterable() is a Project Reactor factory operation that creates a Flux from an Iterable source.
- HTTP response codeAn HTTP status code is a three-digit code in an HTTP response that indicates the result of processing a request.
- ThymeleafThymeleaf is a server-side Java template engine for generating dynamic HTML and other text-based views.
- info endpointThe info endpoint is an Actuator interface that exposes application information such as build metadata and version-control commit details.
- @DataR2dbcTest@DataR2dbcTest is a Spring Boot test annotation that configures an application context with Spring Data R2DBC components for repository integration testing.
- clientA client application is software that requests authorization and uses access tokens to access a protected resource server.
- KubernetesKubernetes is a container orchestration platform that manages deployment, scaling, networking, and lifecycle operations for containerized applications.
- Spring beanAn object instantiated, configured, and managed by the Spring application context.
- aggregate rootThe designated domain object that serves as the entry point for access to the objects within an aggregate.
- /env endpointThe /env endpoint is a Spring Boot Actuator HTTP endpoint that exposes and can modify properties in the application environment.
- /loggers endpointThe /loggers endpoint is a Spring Boot Actuator HTTP endpoint that reports and changes configured logging levels.
- reactive streamA stream-processing abstraction that handles data elements as they become available and can represent an unbounded sequence of elements.
- Jakarta MessagingJMS messaging is the Java standard programming model for sending and receiving messages through a JMS-compliant message broker.
- inbound channel adapterAn inbound channel adapter is a Spring Integration endpoint that receives data from an external system and supplies messages to an integration flow.
- SpringAn open-source Java application framework that provides infrastructure for building applications through containers, dependency injection, web support, data access, security, integration, and related capabilities.
- request-response APIA request-response model is a communication pattern in which one party sends a request and waits for a corresponding response.
- SimpleMessageConverterSimpleMessageConverter is Spring's JMS converter that performs basic payload conversion and requires sent objects to implement Serializable for object messages.
- Project ReactorProject Reactor is a Java library that provides reactive types and operators for asynchronous, nonblocking stream processing.
- reactive programmingReactive programming is a programming approach based on asynchronous processing of data streams and the propagation of change over time.
- @postmapping@PostMapping is a Spring MVC annotation that maps HTTP POST requests to a controller method.
- configuration classA Spring annotation marking a Java class as a source of bean definitions for the application context.
- convertAndSend()convertAndSend() is a JmsTemplate method that converts an application object into a JMS message and sends it.
- MappingJackson2MessageConverterMappingJackson2MessageConverter is a Spring JMS converter that serializes and deserializes message payloads as JSON using Jackson.
- MessageCreatorMessageCreator is a Spring JMS callback interface whose implementation creates a JMS Message for sending.
- JSON Web KeyA JSON Web Key is a JSON representation of a cryptographic key used for signing, verification, encryption, or decryption.
- JWKSourceJWKSource is an API abstraction that supplies JSON Web Keys for cryptographic operations.
- RegisteredClientRepositoryRegisteredClientRepository is a Spring Security interface for storing and retrieving registered OAuth 2 client details.
- bufferbuffer is a Project Reactor operator that groups source elements into collections of a specified size or according to a buffering condition.
- collectListcollectList is a Project Reactor operator that collects all source elements into a List emitted by a Mono.
- collectMapcollectMap is a Project Reactor operator that collects source elements into a Map whose keys are computed by a function and whose values are the elements.
- distinct keyworddistinct is a Project Reactor operator that emits each distinct source element only once.
- schedulerA Project Reactor scheduler provides an execution context and worker resources for running reactive tasks.
- skipskip is a Project Reactor operator that suppresses a specified number of source elements or elements emitted before a specified duration.
- subscribeOnsubscribeOn is a Project Reactor operator that specifies the scheduler on which subscription and upstream work are performed.
- autoconfiguration reportAn autoconfiguration report is a diagnostic record of conditional configurations that matched, did not match, or were applied unconditionally.
- /beans endpointThe /beans endpoint is a Spring Boot Actuator HTTP endpoint that returns descriptions of the beans in the application contexts.
- @conditionalonmissingbean@ConditionalOnMissingBean is a Spring Boot condition annotation that matches when no bean of a specified type or name is already present.
- /conditions endpointThe /conditions endpoint is a Spring Boot Actuator HTTP endpoint that reports the outcomes of conditional autoconfiguration.
- /mappings endpointThe /mappings endpoint is a Spring Boot Actuator HTTP endpoint that lists HTTP request handlers and their request mappings.
- WAR fileA WAR file is a Java Web Application Archive containing the resources and metadata needed to deploy a web application to a servlet container.
- Spring Boot AdminA Spring Boot Admin server is the server component that receives, collects, and displays Actuator information from registered Spring Boot Admin clients.
- UserDetailsServiceUserDetailsService is a Spring Security interface that retrieves user-specific authentication details synchronously.
- JdbcTemplateJdbcTemplate is a Spring API element that simplifies relational database access by providing template methods around JDBC operations.
- ResponseEntityResponseEntity is a Spring type that represents an HTTP response together with its body, headers, and other response details.
- dependency managementDependency management is the practice of declaring, resolving, and controlling the external libraries required by an application.
- HTTP headerA response header is an HTTP field carrying metadata from a server response separately from its payload body.
- MavenMaven is a build automation and dependency-management tool for Java projects.
- Maven wrapperThe Maven Wrapper is a set of project-local scripts that downloads or invokes a specified Maven version without requiring a system-wide Maven installation.
- project object modelA Maven project object model file that declares a project's metadata, dependencies, plugins, and build configuration.
- Spring Boot starter parentThe Spring Boot starter parent is a Maven parent POM that supplies default build configuration and dependency version management for Spring Boot projects.
- SpringApplication.runSpringApplication.run is a Spring Boot entry-point method that bootstraps an application and creates its Spring application context.
- @SpringBootApplication@SpringBootApplication is a Spring Boot annotation that combines configuration, automatic configuration, and component scanning.
- @SpringBootTest@SpringBootTest is a Spring Boot testing annotation that loads an application context with Spring Boot test support.
- testAn automated test is executable code that checks software behavior without requiring a human to perform each test step.
- channel adapterA channel adapter is a Spring Integration component that connects a message channel to an external system by receiving or sending messages.
- CassandraCassandra is a distributed database designed to store and query data in a wide-column data model.
- json()json() is a WebTestClient assertion operation that compares a response body with an expected JSON string.
- @ServiceActivatorA service activator is a Spring Integration endpoint that receives messages from a channel and invokes message-processing logic, optionally producing a message for an output channel.
- clustering keyA clustering key is the component of a Cassandra primary key that determines the ordering of rows within a partition.
- partitioning keyA partition key is the component of a Cassandra primary key that determines the partition in which a row is stored.
- @Id@Id is a Spring Data JDBC annotation that marks a domain-property field as the persistent identity of an object.
- RestTemplateRestTemplate is a Spring client API for making synchronous HTTP requests and mapping HTTP responses to Java objects.
- JSON Web TokenA JWT is a compact, signed or encrypted JSON-based token format for conveying claims between parties.
- container imageA container image is an immutable package containing an application's filesystem, runtime dependencies, metadata, and startup configuration for creating containers.
- FluxFlux is Project Reactor's publisher type for asynchronously emitting zero or more ordered elements.
- Spring Boot DevToolsSpring Boot DevTools is a Spring Boot development-time library that provides automatic restart, browser refresh, template-cache disabling, and related development features.
- account registrationUser registration is the process of creating a persistent application account from submitted personal and credential information.
- authorizationAuthorization is the process of determining which actions or resources an authenticated entity is permitted to access.
- login pageA custom login page is an application-provided web page through which users submit credentials for authentication.
- view templateA Thymeleaf template is an HTML-oriented view document containing markup that Thymeleaf can process to produce rendered output.
- Kubernetes manifestA deployment manifest is a declarative configuration document that specifies how Kubernetes should deploy and operate an application workload.
- Spring MVCSpring MVC is Spring's web framework for implementing model-view-controller applications and handling HTTP requests.
- Spring IntegrationSpring Integration is a Spring framework project for implementing message-based integration flows between applications and application components.
- @getmapping@GetMapping is a Spring MVC annotation that maps HTTP GET requests to a controller method.
- converterA Spring Converter is a class implementing the Converter interface to transform a value from one type into another during data binding.
- redirect viewA redirect view is a controller response instruction that causes the client's browser to request another path.
- @profile@Profile is a Spring annotation that restricts bean or configuration-class creation to specified active profiles.
- @ConfigurationProperties@ConfigurationProperties is a Spring Boot annotation that binds externally defined configuration properties with a specified prefix to a bean's fields or properties.
- Spring Reactive WebSpring WebFlux is Spring's reactive web framework for building web applications that process requests and responses using reactive programming.
- imperative programmingImperative programming is a programming approach in which computation is expressed as an ordered sequence of commands that directly update state or perform actions.
- health indicatorThe HealthIndicator interface is a Spring Boot Actuator contract for components that provide application health status information.
- exchangeAn exchange is an AMQP message-routing component that accepts messages and routes them to queues according to exchange type, bindings, and routing keys.
- routing keyA routing key is a string carried with a RabbitMQ message that an exchange uses to determine message routing.
- message listenerA message listener is a method or component that is invoked when a message arrives on a messaging destination.
- Cassandra persistenceCassandra persistence is the storage and retrieval of application data in Cassandra tables using Cassandra's data model.
- primary keyA primary key is a Cassandra key definition that identifies rows and can combine partitioning and clustering components.
- @primarykeycolumn@PrimaryKeyColumn is a Spring Data Cassandra annotation that maps a property to a specifically configured primary-key column.
- user-defined typeA Cassandra user-defined type is a schema-defined composite type whose fields can be stored together in a column.
- @userdefinedtype@UserDefinedType is a Spring Data Cassandra annotation that identifies a class as representing a Cassandra user-defined type.
- Spring SecuritySpring Security is a Spring framework for securing applications through authentication, authorization, and related security mechanisms.
- functional web programming modelA functional programming model structures application behavior around functions and function composition rather than annotation-driven components.
- API gatewayA gateway interface is an interface whose methods provide an application-facing entry point for sending messages into an integration flow.
- WebTestClientWebTestClient is a Spring reactive testing client for exercising HTTP endpoints and verifying their responses without starting a server.
- restcontroller annotation@RestController is a Spring annotation that marks a controller whose handler methods write response data directly to the HTTP response body by default.
- outbound channel adapterAn outbound channel adapter is an integration endpoint that sends messages from a channel to an external system or resource without generating a reply message.
- readiness checkA readiness probe is a Kubernetes health check that determines whether an application instance is prepared to receive traffic.
- @requestmappingA request-mapping annotation is a Spring web annotation that associates an HTTP request pattern with a handler method or controller.
- @destinationvariable@DestinationVariable is a Spring annotation that binds a handler-method parameter to a variable extracted from an RSocket route.
- aggregateAn aggregate is a domain-driven design cluster of related objects treated as a unit for consistency and lifecycle management.
- RxJavaRxJava is a Java implementation of the ReactiveX programming model for composing asynchronous and event-based sequences.
- health check endpointA health endpoint is an Actuator HTTP endpoint that returns the health status of an application and optionally its health-indicator details.
- CORSCORS is a web security mechanism that allows a server to declare which origins may access its resources from browser-based clients.
- @crossorigin@CrossOrigin is a Spring annotation that configures cross-origin resource sharing for a controller or handler method.
- path variableA path variable is a value embedded in a URL path and bound to a controller method parameter.
- @pathvariable@PathVariable is a Spring MVC annotation that binds a controller method parameter to a variable in the request path.
- authenticationAuthentication is a Spring Security object that represents an authentication request or the resulting authenticated identity and authorities.
- reactive repository supportA reactive Cassandra repository is a repository abstraction for Cassandra persistence whose data-access operations expose reactive publishers.
- keyspaceA Cassandra keyspace is a namespace that groups tables and defines replication-related settings for them.
- authorized clientAn OAuth2 client registration associated with an authorized resource owner and its obtained access tokens.
- bearer authenticationAn access token presented in an HTTP Authorization header using the Bearer authentication scheme.
- request interceptorA component that intercepts outgoing client requests to modify them before transmission.
- request scopeA Spring bean scope in which a separate bean instance is created for each HTTP request.
- Spring Security OAuth 2 clientThe Spring Security module that implements OAuth2 client-side authorization flows, token acquisition, and authenticated resource requests.
- scopeAn OAuth2 scope is a named permission specifying the protected resources or claims a client may request from a provider.
- security ruleA security rule is a declarative condition specifying the security requirements for requests matching particular URL paths or patterns.
- base pathThe Actuator base path is the URL path under which Spring Boot Actuator endpoints are exposed.
- Cassandra Query LanguageCQL is Cassandra Query Language, the language for defining, querying, and modifying Cassandra data and schemas.
- OAuthOAuth 2 is an authorization framework that enables a client to obtain limited access to protected resources on behalf of a resource owner.
- build-image goalThe build-image goal is the Spring Boot Maven plugin goal that builds a container image from a Spring Boot application.
- containerA containerized application is an application packaged with the files and runtime components needed to run in a container.
- container registryA container registry is a service that stores and distributes container images.
- DockerThe Docker runtime is the installed Docker software environment that builds and runs Docker images and containers.
- docker builddocker build is a Docker command that constructs a container image from a Dockerfile and its build context.
- DockerfileA Dockerfile is a text configuration file containing instructions for building a container image.
- WebClientWebClient is a Spring reactive HTTP client API for making asynchronous, nonblocking requests.
- pull modelA pull model is a messaging consumption pattern in which a consumer explicitly requests or retrieves messages, potentially waiting until one is available.
- pipelineA pipeline is a sequence of processing components through which data or messages flow from an input toward an output.
- Apache KafkaApache Kafka is a distributed event-streaming platform for publishing, storing, and consuming ordered message streams.
- GenericHandlerGenericHandler is a Spring Integration functional interface for handling a message payload and returning a result.
- @JmsListener@JmsListener is a Spring annotation that marks a method for automatic invocation when JMS messages arrive at a destination.
- push modelA push model is a messaging consumption pattern in which the messaging system delivers available messages to a consumer automatically.
- getForEntity()getForEntity() is a RestTemplate method that performs an HTTP request and returns a ResponseEntity containing the converted response body and response metadata.
- getForObject()getForObject() is a RestTemplate operation that performs an HTTP GET request and returns the response body converted to a specified object type.
- liveness checkA liveness probe is a health indicator that tells an orchestrator whether an application is healthy enough to continue running without being restarted.
- justjust is a Project Reactor factory operation that creates a publisher whose signals are driven by specified existing objects.
- array columnAn array column is a database table column whose value contains an array of elements.
- edgeAn entity relationship is an association between persisted domain entities represented in an application's data model.
- setA set is a collection that stores distinct elements without permitting duplicates.
- template cachingTemplate caching stores parsed or processed templates so they do not need to be reparsed for every request.
- dependency injectionA framework that supplies an object's dependencies from outside the object rather than requiring the object to construct them.
- query methodThe JdbcTemplate query method executes a SQL query and maps its result rows to objects, optionally using parameter values.
- @RabbitListener@RabbitListener is a Spring AMQP annotation that marks a bean method for invocation when messages arrive in a RabbitMQ queue.
- RabbitTemplate receive methodsRabbitTemplate receive methods are APIs that pull messages from a RabbitMQ queue, optionally converting them to application objects.
- RowMapperRowMapper is a Spring JDBC interface that maps one row of a query result to an object.
- database updateThe JdbcTemplate update method executes a SQL statement that writes or modifies database data and accepts values for its parameters.
- YAMLYAML is a human-readable data-serialization language commonly used for hierarchical configuration.
- splitter@Splitter is a Spring Integration annotation that identifies a method as producing multiple messages from an input message.
- event loopAn event loop is a concurrency mechanism that repeatedly receives events and dispatches their handlers, typically without dedicating a thread to each request.
- template engineA view template library is a software library that processes templates to generate rendered web views.
- loadUserByUsernameloadUserByUsername is the UserDetailsService operation that loads security information for a specified username.
- password encodingPassword encoding is the one-way transformation of a plaintext password into a stored representation used for later credential verification.
- PasswordEncoderPasswordEncoder is a Spring Security interface for transforming plaintext passwords into encoded representations suitable for secure storage and verification.
- UserDetailsUserDetails is a Spring Security interface that exposes a user's credentials, authorities, and account-status information to the security framework.
- Cassandra clusterA Cassandra cluster is a group of Cassandra nodes that operate together as a database system.
- bodyToMono()bodyToMono() is a WebClient response operation that converts a response body into a Mono of a specified type.
- validation ruleA validation rule is a constraint that determines whether submitted data satisfies a required condition.
- Spring Data RESTSpring Data REST is a Spring Data project that automatically exposes repository operations through REST APIs.
- static resource directoryA static resource directory is a web application's directory for files such as images, stylesheets, and JavaScript that are served without template rendering.
- channel modelThe channel model is a bidirectional communication pattern in which both participants can send data at any time.
- message propertiesMessageProperties is a Spring AMQP object containing metadata and headers associated with a Message.
- @Router@Router is a Spring Integration annotation that identifies a method or bean as defining message-routing behavior.
- build informationMetadata describing an application's project build, including its version, build time, and build environment.
- BuildInfoContributorA Spring Boot Actuator InfoContributor implementation that exposes project build information from a build-info.properties file.
- Git commit metadataMetadata describing the Git revision and commit associated with a project build.
- InfoContributorA Spring Boot Actuator interface whose implementations contribute information to an application's info endpoint response.
- embedded databaseAn embedded database is a database engine that runs within the application process or development environment rather than as a separately managed service.
- asynchronous programmingAsynchronous communication is interapplication communication in which the sender can continue processing without waiting for the recipient's response.
- application modelModel is a Spring MVC object that carries attributes from a controller to a view.
- @patchmapping@PatchMapping is a Spring MVC annotation that maps HTTP PATCH requests to a controller method.
- @putmapping@PutMapping is a Spring MVC annotation that maps HTTP PUT requests to a controller method.
- @messagemapping@MessageMapping is a Spring annotation that maps messages sent to a destination route to a handler method.
- RSocketRequesterRSocketRequester is a Spring client API for constructing and sending RSocket requests and receiving their reactive responses.
- Spring Data MongoDBSpring Data MongoDB is a Spring Data project that provides repository-based persistence for Mongo document databases.
- email endpoint moduleThe email endpoint module is a Spring Integration endpoint module that provides channel adapters for receiving and sending email messages.
- JavaBean Validation APIThe Java standard for declaring and evaluating constraints on Java object properties and method parameters, originally specified as JSR 303.
- @data@Data is a Lombok annotation that generates common data-class methods and a constructor for a class.
- LombokLombok is a Java library that generates boilerplate code, such as accessors, constructors, and object methods, through annotations during compilation.
- health statusA health status is a categorical representation of whether an application or external system is available and operational.
- requestpredicateA Spring functional web API utility class providing predicates for matching HTTP requests.
- routerfunctionA functional web API type that maps matching requests to handler functions.
- serverrequestA Spring functional web API type representing an incoming HTTP request, including its headers and body.
- serverresponseA Spring functional web API type representing an HTTP response, including its headers and body.
- availability change eventAn availability change event is an application event that records a change in an application's liveness or readiness state.
- health groupA health group is an Actuator health-endpoint subset that exposes a selected aspect of an application's health, such as liveness or readiness.
- management.health.probes.enabledmanagement.health.probes.enabled is a Spring Boot configuration property that controls whether Actuator liveness and readiness probes are enabled.
- DocumentA document is a self-contained record in a document database that stores data as structured fields and values.
- page sizeA page size is the maximum number of results requested for one page of a paginated query.
- naming standardA naming convention is a prescribed pattern for names that allows software to infer structure or behavior from those names.
- hypermediaHATEOAS is a REST constraint in which hypermedia controls guide a client through an application's available resources and state transitions.
- hypertext linkA hypermedia link is a response-provided reference that identifies a related resource or available API action.
- web formAn HTML form is a browser document structure containing controls for submitting user-entered data to a server.
- message brokerA message broker is middleware that accepts, routes, and delivers messages between application components or services.
- servlet request attributeA request attribute is a named value associated with an individual web request and made available to request-processing components or view rendering.
- th:eachth:each is a Thymeleaf namespace attribute that repeats element rendering for each item in a collection.
- th:fieldth:field is a Thymeleaf namespace attribute that binds a form element to a model property and manages related field attributes.
- th:textth:text is a Thymeleaf namespace attribute that replaces an element's body with the value of an expression.
- th:valueth:value is a Thymeleaf namespace attribute that sets an output element's value from an expression.
- KafkaTemplateKafkaTemplate is a Spring for Apache Kafka API class that sends records to and receives records from Kafka topics.
- autowiringA Spring technique that automatically supplies a bean with other beans matching its dependencies.
- database URLA database URL is a connection string that identifies a database and specifies how a client should connect to it.
- request-stream modelThe request-stream model is a communication pattern in which a client sends one request and a server returns a stream of zero or more values.
- HTTP PUT methodAn HTTP PUT request sends a complete representation to a resource's URL, conventionally replacing the resource's existing representation.
- SpringBootServletInitializerSpringBootServletInitializer is a Spring Boot class that integrates a Spring application with a servlet container by configuring its application context and servlet components.
- GeneratedKeyHolderA KeyHolder is a Spring JDBC object that captures keys generated by a database during an insert operation.
- PreparedStatementCreatorA Spring JDBC callback object that creates a configured SQL prepared statement with specified parameter values.
- @responsestatus@ResponseStatus is a Spring annotation that declares the HTTP status code returned by a controller method or exception handler.
- RSocket controllerAn RSocket controller is a Spring component whose message-handler methods respond to requests addressed to configured RSocket routes.
- RSocket serverAn RSocket server is a TCP-based endpoint that accepts and handles RSocket requests on a configured port.
- fromArrayfromArray is a Project Reactor factory operation that creates a Flux from an array's elements.
- fromStreamfromStream is a Project Reactor factory operation that creates a Flux from the elements of a Java Stream.
- intervalinterval is a Project Reactor factory operation that creates a Flux emitting incrementing values at specified time intervals.
- rangerange is a Project Reactor factory operation that creates a Flux emitting a finite sequence of consecutive integers.
- integration testAn integration test verifies the interaction of multiple application components, often in a running application context with real dependencies.
- MongoDBMongo is a document-oriented database system commonly known as MongoDB.
- resource tagA tag is a named key-value dimension attached to a metric for classification and filtering.
- onStatus()onStatus() is a WebClient response-handling operation that associates HTTP status predicates with functions producing errors.
- Spring Tool SuiteSpring Tool Suite is an integrated development environment distribution and set of extensions for developing Spring applications.
- custom query methodA custom query method is a repository method whose query is explicitly specified rather than derived entirely from the method name.
- derived query methodA derived query method is a repository method whose query behavior is inferred by parsing its name and matching name components to entity properties and query operators.
- @Query@Query is a Spring Data annotation that associates a repository method with an explicitly specified database query.
- fire-and-forget operationThe fire-and-forget model is a communication pattern in which a client sends a request without receiving a response from the server.
- automatic application restartAutomatic application restart is a development feature that restarts an application when project code or configuration changes are detected.
- class loaderA class loader is a JVM component that loads Java classes and other resources into a running application.
- LiveReload serverA LiveReload server monitors served resources and signals compatible browsers to reload when those resources change.
- bodyToFlux()bodyToFlux() is a WebClient response operation that converts a response body into a Flux of a specified type.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.
