Share E-Book
Scan to open this page

Scan with your phone to open this page

Author: Mohamed Shazin Sadakath

Rating No ratings yet

Spring is one of the best tools available on the market for developing web, enterprise, and cloud-ready software. The goal of Spring Boot is to provide a set of tools for quickly building Spring applications that are easy to configure, and that make it easy to create and run production-grade Spring-based applications. Spring Boot 2.0 Projects will get you acquainted with important features of the latest version of this application-building tool and will cover basic, as well as advanced topics. The book starts off by teaching you how to create a web application using Spring Boot, followed by creating a Spring Boot-based simple blog management system that uses Elasticsearch as the data store. As you make your way through the chapters, you’ll build a RESTful web services application using Kotlin and the Spring WebFlux framework. Spring WebFlux is a new framework that helps in creating a reactive a

AI Reading Assistant

Whole-book reading guide from stratified index samples; jump to passages in the text

AI guide
【One-Line Pitch】 A hands-on project guide that walks Java developers through Spring Boot 2.0 by building real applications—from a basic web app to a reactive movie-rating API—while flagging the migration traps that come with the 2.0 release. Best for developers who already know some Spring and want to learn by shipping working code. 【Book Arc】 - **Opening (~0%–10%)**: Bootstraps the reader into Spring Boot 2.0—project anatomy, the `@SpringBootApplication` entry point, and the multiple ways to run an app (IDE, fat JAR/WAR, Maven plugin). - **Early (~10%–32%)**: Covers the 2.0 upgrade surface—the new configuration-property binding API, YAML vs. properties, Micrometer-based custom metrics, and the Actuator renames/relocations that break 1.x code—then moves into a basic web application with JPA, H2, auditing, and Thymeleaf views. - **Middle (~32%–48%)**: Builds a blog management system using Elasticsearch as the data store, applying the MVC pattern and FreeMarker templates, with Spring Security wiring authentication and `AuditorAware` for `@CreatedBy` auditing. - **Late (~48%–75%)**: Shifts to reactive territory—Spring WebFlux controllers, Spring Data MongoDB persistence, and a RESTful movie-rating API written in Kotlin, secured with basic authorization and verified through integration tests and Postman. - **Ending (~75%–100%)**: The excerpts do not cover the closing chapters in detail; the table of contents points to further reactive/microservice material beyond the movie API. 【Key Takeaways】 - **Spring Boot 2.0 is a migration-heavy release** (Early): Actuator properties moved under `management.*`, endpoints were renamed (`/autoconfig`→`/conditions`, `/trace`→`/httptrace`), and CRaSH remote shell, Spring Mobile, and Spring Social auto-configuration were removed—so 1.x code needs deliberate rework. - **Configuration binding got a new API** (Early): YAML and properties files both work, but the 2.0 binding API changes how POJOs like `Address` map to nested config, which matters for anyone upgrading. - **Observability is first-class via Micrometer** (Early): Custom metrics (e.g., a `custom.endpoint.calls` counter) are registered through `MeterRegistry`, making production monitoring a design concern rather than an afterthought. - **Layered MVC keeps projects maintainable** (Middle): Separating presentation, routing/business logic, and persistence lets UI and database work proceed independently—contrasted explicitly with unlayered "spaghetti" web apps. - **Template engines beat raw JSP for views** (Early): Thymeleaf and FreeMarker decouple presentation from business logic and enable reuse of tested markup, reducing duplication and bugs. - **Security and auditing are wired together** (Middle): `AuditorAware` pulls the logged-in principal from `SecurityContextHolder` so `@CreatedBy` fields populate automatically—a pattern worth copying. - **Reactive REST is the book's advanced payoff** (Late): A Kotlin + WebFlux + MongoDB movie-rating API demonstrates the reactive stack end-to-end, including service/controller testing and Postman-based verification. - **Testing is treated as part of each build** (Early–Late): Repository tests, mocked service tests, and integration tests appear alongside features rather than as a separate topic. 【Reading Tips】 - **Skim the migration chapter if you're new to Spring Boot**, but deep-read it if you're upgrading a 1.x codebase—the Actuator and property changes are the highest-risk items. - **Follow the projects in order**: each builds on prior setup (JPA/H2 → Elasticsearch → MongoDB/WebFlux), so skipping ahead means re-creating infrastructure. - **Treat the reactive chapters as the hard part**: WebFlux, Kotlin, and MongoDB together are the steepest climb; budget extra time and run the integration tests yourself. - **Use the code repositories referenced in the excerpts** rather than retyping snippets—the book points to per-chapter GitHub directories. - **Take away the patterns, not just the code**: auditing via `AuditorAware`, layered MVC, and Micrometer metrics transfer to your own projects. 【Coverage Limits】 This guide is based on stratified excerpts covering roughly the first half of the book (through the reactive movie API); later chapters and any microservices material are not represented, so claims about the ending are inferred from the table of contents only.
Page 7
ng me. To all my teachers and friends who taught me things. Biharck Araújo has been working as a principal software architect and lead programmer for the pas...
View in text
Excerpt 2
custom.endpoint.calls, which will be incremented every time CustomEndpointWebExtension is invoked: public static final String CUSTOM_ENDPOINT_CALLS = "custom...
View in text
Excerpt 3
with the data when an embedded database such as H2 is used. This can be seen from the following code: <dependencies> <dependency> <groupId>org.springframewor...
View in text
Excerpt 4
title, body, link, summary, author, created date, and so on User: This domain model will store the username, password, and role of a registered user Implemen...
View in text
Excerpt 5
loop through each index and print the value of that index. The for loop with a collection The for loop can also be used to loop through List and Set as well,...
View in text
Excerpt 6
UserDetailsRepositoryReactiveAuthenticationManager { val userDetailsRepositoryReactiveAuthenticationManager = UserDetailsRepositoryReactiveAuthenticationMana...
View in text
Excerpt 7
ion}</version> <executions> <execution> <id>default</id> <goals> <goal>build</goal> <goal>push</goal> </goals> </execution> </executions> <configuration> <co...
View in text
Excerpt 8
in user can log out. Using Spring Data JPA for persistence This section will introduce JPA and how to use Spring Data JPA repositories to provide Create, Ret...
View in text
Tags
AI categories
ProgrammingJavaBackend
ISBN: 1789136156
Publisher: Packt Publishing
Publish Year: 2020
Language: English
Pages: 329
File Format: PDF
File Size: 5.6 MB
Text Preview (First 20 pages)
Registered users can read the full content for free

Register as a Gaohf Library member to read the complete e-book online for free and enjoy a better reading experience.

Generating text preview…