Share E-Book
Scan to open this page

Scan with your phone to open this page

Author: Marten Deinum, Iuliana Cosmina

Rating No ratings yet

Explore the designs of the Spring MVC and WebFlux frameworks, and apply similar designs and techniques to your own code. Along with detailed analysis of the code and functionality, this book includes numerous tips and tricks to help you get the most out of Spring MVC, WebFlux, and Java-based web application development in general using Spring. You’ll see how Spring MVC is a modern web application framework built upon the latest Spring Framework 5 and Spring Boot 2. Spring MVC is suitable for building reusable web controller modules that encapsulate rich page navigation rules. Pro Spring MVC with WebFlux takes great care in covering every inch of Spring MVC with WebFlux to give you the complete picture. Along with all the best-known features of these frameworks, you’ll discover some new hidden treasures. You’ll also learn how to correctly and safely extend the frameworks to create customized solutions. This book is for anyone who wishes to write robust, modern, and useful web applications with the Spring Framework. After reading and using this book, you'll become proficient with Spring MVC and be able to apply it to your own Java web applications and microservices. What You Will Learn • Use Spring MVC with WebFlux to build Java-based web applications • Employ the various Spring MVC architectures • Work with controllers and routing functions • Build microservices and web services using Spring MVC and REST • Create reactive web applications using Spring WebFlux • Secure Spring MVC and Spring WebFlux • Deploy your Spring MVC application to the cloud Who This Book Is For Those with at least some prior experience with Java web application development. Some previous experience with Spring Boot or the Spring Framework is recommended.

AI Reading Assistant

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

AI guide
【One-Line Pitch】 A practical, code-driven guide for Java developers who want to master both classic Spring MVC and reactive Spring WebFlux, with hands-on projects, configuration walkthroughs, and deployment tips for building modern web applications and microservices. 【Book Arc】 - **Opening (~0%–8%)**: Introduces the book’s scope—covering Spring MVC and WebFlux designs, with an emphasis on applying framework patterns to your own code. Includes author acknowledgments and a promise of hidden tips for extending the frameworks safely. - **Early (~15%–26%)**: Sets up the local development environment: installing Java (JDK 14), Gradle (6.x), and IntelliJ IDEA, plus an overview of the multi-module "Bookstore" sample project used throughout the book. Also begins Spring Framework fundamentals, tracing its origins from J2EE complexity to a modular, IoC-based design. - **Middle (~38%–52%)**: Walks through running the sample projects in IntelliJ IDEA—configuring Gradle and JDK versions, building via the Gradle View, deploying to Apache Tomcat, and launching Spring Boot apps. Includes troubleshooting tips for multi-module setups, such as setting the working directory explicitly. - **Middle (~56%–62%)**: Dives into Spring Framework fundamentals: module overview (AOP, Beans, Context, Web, WebFlux, etc.), dependency injection as a cleaner alternative to JNDI lookups, and the rationale behind Spring’s simple yet powerful programming model. Points to deeper references like Pro Spring 5 for advanced topics. - **Late (~67%–82%)**: Continues with Spring module details and dependency injection examples, contrasting messy contextualized lookups with clean, testable DI code. The book then transitions toward controllers, REST, views, and WebFlux (per the table of contents), though the excerpts here focus on the foundational setup and DI principles. 【Key Takeaways】 - **Environment setup is half the battle** (Early): The book insists on JDK 14, Gradle 6.x, and IntelliJ IDEA, with the Gradle Wrapper to avoid manual installs. Getting these right prevents common build and deployment frustrations later. - **Spring’s modularity is its strength** (Middle): The framework is a collection of jars (spring-core, spring-webmvc, spring-webflux, etc.) you can cherry-pick. Understanding this helps you build lean applications without unnecessary dependencies. - **Dependency injection beats contextual lookup** (Late): JNDI-style lookups in constructors create messy, untestable code. Passing dependencies via constructors (DI) makes code clean, decoupled, and unit-test-friendly—a core Spring philosophy. - **Spring Boot simplifies but has quirks** (Middle): Running Boot apps in IntelliJ IDEA is easy (right-click the main class), but multi-module Gradle projects may need a manually set working directory to build the application context correctly. - **The Bookstore project is your learning lab** (Early): A multi-module Gradle project, with chapter-prefixed modules (e.g., chapter1-bookstore, chapter1-mvc-bookstore), gives you ready-made code to experiment with as you progress through the book. - **Spring evolved from J2EE pain points** (Middle): Born from Rod Johnson’s book on J2EE complexity, Spring offers a consistent programming model across data access, messaging, and web—solving problems that older JEE specs struggled with. 【Reading Tips】 - **Skim Chapter 1 if you’re experienced**: The environment setup (Java, Gradle, IntelliJ) is thorough but standard; skip ahead if you already have a working toolchain, but do note the IntelliJ-specific Gradle/JDK troubleshooting tips. - **Deep-read Chapter 2 for DI fundamentals**: The contrast between JNDI lookup and dependency injection is essential—grasp this before moving to controllers and WebFlux, as it underpins all Spring code. - **Use the Bookstore project as a reference**: Don’t just read—run the chapter-prefixed modules and modify them. The book’s value comes from hands-on experimentation with the provided code. - **Watch for hidden treasures**: The authors promise tips on extending Spring MVC and WebFlux safely; keep an eye out for these in later chapters (e.g., customizing RequestMappingHandlerMapping or using RequestDataValueProcessor). - **Pair with official docs for depth**: The book points to Spring Framework and Spring Boot reference guides for deeper dives; use them when you need more detail than the book provides. 【Coverage Limits】 This guide is based on excerpts covering the book’s introduction, environment setup, and Spring Framework fundamentals (Chapters 1–2). It does not cover the detailed controller, REST, view, or WebFlux chapters (Chapters 3–10), which are listed in the table of contents but not excerpted here.
Excerpt 1
ommended. Cover Book cover of Pro Spring MVC with WebFlux Pro Spring MVC with WebFlux Marten Deinum and Iuliana Cosmina Pro Spring MVC with WebFlux Web Devel...
View in text
Excerpt 2
an continue to learn and grow as a software developer.
View in text
Excerpt 3
, you are certain that the expected version of Java is used. Restart the terminal and verify that the version of Java the operating system sees is the one th...
View in text
Excerpt 4
1 chapter1-mvc-bookstore A simple Spring MVC project.
View in text
Excerpt 5
touch on the necessary basics of the Spring Framework here. If you want more in-depth information about it, we suggest the excellent Spring Framework documen...
View in text
Excerpt 6
might differ, depending on how you obtain the module.
View in text
Excerpt 7
tation; import org.springframework.beans.factory.annotation.Autowired; //other imports omitted public class MoneyTransferServiceImpl implements MoneyTransfer...
View in text
Excerpt 8
eed to understand the different layers of a web application. And we’ll begin that discussion with a brief introduction of the MVC pattern in general, includi...
View in text
Tags
AI categories
ProgrammingJavaBackend
ISBN: 1484256654
Publisher: Apress
Publish Year: 2021
Language: English
Pages: 592
File Format: EPUB
File Size: 13.2 MB