Full Stack Development with Spring Boot 3 and React: Build modern web apps using the power of Java, React and TypeScript [Fourth Edition]
9781805122463
Full Stack Development with Spring Boot 3 and React contains a wealth of practical guidance for picking up full stack de
Table of contents : Preface Who this book is for What this book covers To get the most out of this book Get in touch Part I: Backend Programming with Spring Boot Setting Up the Environment and Tools – Backend Technical requirements Installing Eclipse Understanding Gradle Using Spring Initializr Creating a project Running the project Spring Boot development tools Logs and problem-solving Installing MariaDB Summary Questions Further reading Understanding Dependency Injection Technical requirements Introducing dependency injection Using dependency injection in Spring Boot Summary Questions Further reading Using JPA to Create and Access a Database Technical requirements Basics of ORM, JPA, and Hibernate Creating the entity classes Creating CRUD repositories Adding relationships between tables Setting up a MariaDB database Summary Questions Further reading Creating a RESTful Web Service with Spring Boot Technical requirements Basics of REST Creating a RESTful web service with Spring Boot Using Spring Data REST Documenting a RESTful API Summary Questions Further reading Securing Your Backend Technical requirements Understanding Spring Security Securing your backend with a JSON Web Token Securing the login Securing the other requests Handling exceptions Adding a CORS filter Role-based security Using OAuth2 with Spring Boot Summary Questions Further reading Testing Your Backend Technical requirements Testing in Spring Boot Creating test cases Testing with Gradle Test-driven development Summary Questions Further reading Part II: Frontend Programming with React Setting Up the Environment and Tools – Frontend Technical requirements Installing Node.js Installing Visual Studio Code VS Code extensions Creating and running a React app Modifying a React app Debugging a React app Summary Questions Further reading Getting Started with React Technical requirements Creating React components Examining our first React app Useful ES6 features Constants and variables Arrow functions Template literals Object destructuring Classes and inheritance JSX and styling Props and state Props State Stateless components Conditional rendering React hooks useState Batching useEffect useRef Custom hooks The Context API Handling lists with React Handling events with React Handling forms with React Summary Questions Further reading Introduction to TypeScript Technical requirements Understanding TypeScript Common types Functions Using TypeScript features with React State and props Events Creating a React app with TypeScript Vite and TypeScript Summary Questions Further reading Consuming the REST API with React Technical requirements Promises async and await Using the fetch API Using the Axios library Practical examples OpenWeather API GitHub API Handling race conditions Using the React Query library Summary Questions Further reading Useful Third-Party Components for React Technical requirements Installing third-party React components Working with AG Grid Using the Material UI component library Managing routing with React Router Summary Questions Further reading Part III: Full Stack Development Setting Up the Frontend for Our Spring Boot RESTful Web Service Technical requirements Mocking up the UI Preparing the Spring Boot backend Creating the React project for the frontend Summary Questions Further reading Adding CRUD Functionalities Technical requirements Creating the list page Fetching data from the backend Using environment variables Adding paging, filtering, and sorting Adding the delete functionality Displaying a toast message Adding a confirmation dialog window Adding the add functionality Adding the edit functionality Exporting the data to CSV Summary Questions Further reading Styling the Frontend with MUI Technical requirements Using the MUI Button component Using the MUI Icon and IconButton components Using the MUI TextField component Summary Questions Further reading Testing React Apps Technical requirements Using Jest Using the React Testing Library Using Vitest Installing and configuring Running our first test Testing our Carlist component Firing events in tests End-to-end testing Summary Questions Further reading Securing Your Application Technical requirements Securing the backend Securing the frontend Creating a login component Implementing REST API calls Refactoring duplicate code Displaying an error message Logging out Summary Questions Further reading Deploying Your Application Technical requirements Deploying the backend with AWS Deploying our MariaDB database Deploying our Spring Boot application Deploying the frontend with Netlify Using Docker containers Summary Questions Further reading Other Books You May Enjoy Index