Giter Site home page Giter Site logo

makdi76 / full-stack-development-with-spring-boot-3-and-react-fourth-edition Goto Github PK

View Code? Open in Web Editor NEW

This project forked from packtpublishing/full-stack-development-with-spring-boot-3-and-react-fourth-edition

0.0 0.0 0.0 462 KB

JavaScript 8.63% Java 43.15% TypeScript 32.61% CSS 12.94% HTML 2.68%

full-stack-development-with-spring-boot-3-and-react-fourth-edition's Introduction

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, published by Packt.

Build modern web applications using the power of Java, React, and TypeScript

The author of this book is -Juha Hinkula

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
  2. Chapter 2, Understanding Dependency Injection
  3. Chapter 3, Using JPA to Create and Access a Database
  4. Chapter 4, Creating a RESTful Web Service with Spring Boot
  5. Chapter 5, Securing Your Backend
  6. Chapter 6, Testing Your Backend
  7. Chapter 7, Setting Up the Environment and Tools – Frontend
  8. Chapter 8, Getting Started with React
  9. Chapter 9, Introduction to TypeScript
  10. Chapter 10, Consuming the REST API with React
  11. Chapter 11, Useful Third-Party Components for React
  12. Chapter 12, Setting Up the Frontend for Our Spring Boot RESTful Web Service
  13. Chapter 13, Adding CRUD Functionalities
  14. Chapter 14, Styling the Frontend with MUI
  15. Chapter 15, Testing React Apps
  16. Chapter 16, Securing Your Application
  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 today! Coding

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/ Common Windows, MacOS, Linux
VS Code (latest version) https://code.visualstudio.com/ Common Windows, MacOS, Linux
MariaDB version == 10 https://mariadb.org/ Common Windows, MacOS, Linux
Docker (latest version) https://www.docker.com/get-started/ Common Windows, MacOS, Linux
Node.js (latest LTS version) https://nodejs.org/en Common Windows, MacOS, Linux

Detailed installation steps (software-wise)

Installation instructions:

  1. https://www.eclipse.org/downloads/packages/installer
  2. https://code.visualstudio.com/docs/setup/setup-overview
  3. https://mariadb.com/kb/en/getting-installing-and-upgrading-mariadb/
  4. https://docs.docker.com/engine/install/
  5. https://nodejs.org/en/download

Know more on the Discord server Coding

You can get more engaged on the Discord server for more latest updates and discussions in the community at Discord

Download a free PDF Coding

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 Coding

We also provide a PDF file that has color images of the screenshots/diagrams used in this book at GraphicBundle Coding

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

full-stack-development-with-spring-boot-3-and-react-fourth-edition's People

Contributors

juhahinkula avatar packtanjitha avatar amishav26 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.