# Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition
**Repository Path**: lindring/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition
## Basic Information
- **Project Name**: Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2023-12-18
- **Last Updated**: 2023-12-18
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition
This is the code repository for [Full Stack Development with Spring Boot 3 and React - Fourth Edition](https://www.packtpub.com/product/full-stack-development-with-spring-boot-3-and-react-fourth-edition/9781805122463), published by Packt.
**Build modern web applications using the power of Java, React, and TypeScript**
The author of this book is -[Juha Hinkula](https://www.linkedin.com/in/juha-hinkula-6743322?utm_source=share&utm_campaign=share_via&utm_content=profile&utm_medium=ios_app)
## About the book
If you’re an existing Java developer who wants to go full stack or pick up another frontend framework, this book is your concise introduction to React. In this three-part build-along, you’ll create a robust Spring Boot backend, a React frontend, and then deploy them together.
This new edition is updated to Spring Boot 3 and includes expanded content on security and testing. For the first time ever, it also covers React development with the in-demand TypeScript.
You’ll explore the elements that go into creating a REST API and testing, securing, and deploying your applications. You’ll learn about custom Hooks, third-party components, and MUI.
By the end of this book, you'll be able to build a full stack application using the latest tools and modern best practices.
## Key Takeaways
* Make fast and RESTful web services powered by Spring Data REST
* Create and manage databases using ORM, JPA, Hibernate, and more
* Explore the use of unit tests and JWTs with Spring Security
* Employ React Hooks, props, states, and more to create your frontend
* Harness the Material UI component library to customize your frontend
* Use the fetch API, Axios, and React Query for networking
* Add CRUD functionality to your apps
* Deploy your apps using AWS and Docker
## What's New
This fourth edition has been updated to Spring Boot 3. Here are the biggest changes:
* A new chapter introducing TypeScript, and TypeScript code throughout the book
* More modern tooling (Maven -> Gradle, create-react-app -> Vite)
* Expanded content on Spring Security and testing with Vitest
* New content on fetching data with the React Query library
* Backend deployment on AWS Elastic Beanstalk
* Frontend deployment on Netlify
## Outline and Chapter Summary
If you’re an existing Java developer who wants to go full stack or pick up another frontend framework, this book is your concise introduction to React. In this three-part build-along, you’ll create a robust Spring Boot backend, a React frontend, and then deploy them together.
This new edition is updated to Spring Boot 3 and includes expanded content on security and testing. For the first time ever, it also covers React development with the in-demand TypeScript.
You’ll explore the elements that go into creating a REST API and testing, securing, and deploying your applications. You’ll learn about custom Hooks, third-party components, and MUI.
By the end of this book, you’ll be able to build a full stack application using the latest tools and modern best practices.
1. Chapter 1, [Setting Up the Environment and Tools – Backend](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter01)
2. Chapter 2, [Understanding Dependency Injection](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter02)
3. Chapter 3, [Using JPA to Create and Access a Database](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter03)
4. Chapter 4, [Creating a RESTful Web Service with Spring Boot](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter04)
5. Chapter 5, [Securing Your Backend](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter05)
6. Chapter 6, [Testing Your Backend](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter06)
7. Chapter 7, [Setting Up the Environment and Tools – Frontend](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter07)
8. Chapter 8, [Getting Started with React](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter08)
9. Chapter 9, [Introduction to TypeScript](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter09)
10. Chapter 10, [Consuming the REST API with React](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter10)
11. Chapter 11, [Useful Third-Party Components for React](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter11)
12. Chapter 12, [Setting Up the Frontend for Our Spring Boot RESTful Web Service](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter12)
13. Chapter 13, [Adding CRUD Functionalities](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter13)
14. Chapter 14, [Styling the Frontend with MUI](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter14)
15. Chapter 15, [Testing React Apps](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter15)
16. Chapter 16, [Securing Your Application](https://github.com/PacktPublishing/Full-Stack-Development-with-Spring-Boot-3-and-React-Fourth-Edition/tree/main/Chapter16)
17. Chapter 17, Deploying Your Application
## Part I: Backend Programming with Spring Boot
### Chapter 01, Setting Up the Environment and Tools – Backend
Chapter 1, _Setting Up the Environment and Tools – Backend_, explains how to install the software needed in this book for backend development and how to create your first Spring Boot application.
### Chapter 02, Understanding Dependency Injection
Chapter 2, _Understanding Dependency Injection_, explains the basics of dependency injection and how it is achieved in Spring Boot.
### Chapter 03, Using JPA to Create and Access a Database
Chapter 3, _Using JPA to Create and Access a Database_, introduces JPA and explains how to create and access databases with Spring Boot.
### Chapter 04, Creating a RESTful Web Service with Spring Boot
Chapter 4, _Creating a RESTful Web Service with Spring Boot_, explains how to create RESTful web services using Spring Data REST.
### Chapter 05, Securing Your Backend
Chapter 5, _Securing Your Backend_, explains how to secure your backend using Spring Security and JWTs.
### Chapter 06, Testing Your Backend
Chapter 6, _Testing Your Backend_, covers testing in Spring Boot. We will create a few unit and integration tests for our backend and learn about test-driven development.
## Part II: Frontend Programming with React
### Chapter 07, Setting Up the Environment and Tools – Frontend
Chapter 7, _Setting Up the Environment and Tools_ – Frontend, explains how to install the software needed in this book for frontend development.
### Chapter 08, Getting Started with React
Chapter 8, _Getting Started with React_, introduces the basics of the React library.
### Chapter 09, Introduction to TypeScript
Chapter 9, _Introduction to TypeScript_, covers the basics of TypeScript and how to use it to create React apps.
### Chapter 10, Consuming the REST API with React
Chapter 10, _Consuming the REST API with React_, shows how to use REST APIs with React using the Fetch API.
### Chapter 11, Useful Third-Party Components for React
Chapter 11, _Useful Third-Party Components for React_, demonstrates some useful components that we’ll use in our frontend development.
## Part III: Full Stack Development
### Chapter 12, Setting Up the Frontend for Our Spring Boot RESTful Web Service
Chapter 12, _Setting Up the Frontend for Our Spring Boot RESTful Web Service_, explains how to set up the React app and Spring Boot backend for frontend development.
### Chapter 13, Adding CRUD Functionalities
Chapter 13, _Adding CRUD Functionalities_, shows how to implement CRUD functionalities to the React frontend.
### Chapter 14, Styling the Frontend with MUI
Chapter 14, _Styling the Frontend with MUI_, shows how to polish the user interface using the React MUI component library.
### Chapter 15, Testing React Apps
Chapter 15, _Testing Your Frontend_, explains the basics of React frontend testing.
### Chapter 16, Securing Your Application
Chapter 16, _Securing Your Application_, explains how to secure the frontend using JWTs.
### Chapter 17, Deploying Your Application
Chapter 17, _Deploying Your Application_, demonstrates how to deploy an application with AWS and Netlify, and how to use Docker containers.
> If you feel this book is for you, get your [copy](https://www.amazon.com/Full-Stack-Development-Spring-React-ebook/dp/B0CGM5LNWN/ref=sr_1_1?crid=10CRUCBS8PS5V&keywords=Full+Stack+Development+with+Spring+Boot+3+and+React&qid=1698642246&s=books&sprefix=full+stack+development+with+spring+boot+3+and+react%2Cstripbooks-intl-ship%2C257&sr=1-1) today!
With the following software and hardware list you can run all code files present in the book.
## Software and hardware list
| Software required | Link to the software | Hardware specifications | OS required |
|:---: |:---: |:---: |:---: |
| Eclipse (latest version) | [https://www.eclipse.org/](https://www.eclipse.org/) | Common | Windows, MacOS, Linux |
| VS Code (latest version) | [https://code.visualstudio.com/](https://code.visualstudio.com/) | Common | Windows, MacOS, Linux |
| MariaDB version == 10 | [https://mariadb.org/](https://mariadb.org/) | Common | Windows, MacOS, Linux |
| Docker (latest version) | [https://www.docker.com/get-started/](https://www.docker.com/get-started/) | Common | Windows, MacOS, Linux |
| Node.js (latest LTS version) | [https://nodejs.org/en](https://nodejs.org/en) | Common | Windows, MacOS, Linux |
## Detailed installation steps (software-wise)
Installation instructions:
1. [https://www.eclipse.org/downloads/packages/installer](https://www.eclipse.org/downloads/packages/installer)
2. [https://code.visualstudio.com/docs/setup/setup-overview](https://code.visualstudio.com/docs/setup/setup-overview)
3. [https://mariadb.com/kb/en/getting-installing-and-upgrading-mariadb/](https://mariadb.com/kb/en/getting-installing-and-upgrading-mariadb/)
4. [https://docs.docker.com/engine/install/](https://docs.docker.com/engine/install)
5. [https://nodejs.org/en/download](https://nodejs.org/en/download)
## Know more on the Discord server
You can get more engaged on the Discord server for more latest updates and discussions in the community at [Discord](https://packt.link/FullStackSpringBootReact4e)
## Download a free PDF
_If you have already purchased a print or Kindle version of this book, you can get a DRM-free PDF version at no cost. Simply click on the link to claim your free PDF._
[Free-Ebook](https://packt.link/free-ebook/9781805122463)
We also provide a PDF file that has color images of the screenshots/diagrams used in this book at [GraphicBundle](https://packt.link/gbp/9781805122463)
## Get to know the Author
_Juha Hinkula_ is a software development lecturer at Haaga-Helia University of Applied Sciences in Finland. He received an MSc degree in Computer Science from the University of Helsinki and has over 17 years of industry experience in software development. Over the past few years, he has focused on modern full stack development. He is also a passionate mobile developer with Android-native technology, and he uses React Native.
## Other Related Books
- [Microservices with Spring Boot 3 and Spring Cloud - Third Edition](https://www.packtpub.com/product/microservices-with-spring-boot-3-and-spring-cloud-third-edition/9781805128694)
- [React 18 Design Patterns and Best Practices, 4e](https://www.packtpub.com/product/react-18-design-patterns-and-best-practices-fourth-edition/9781803233109)