Book Image

Full Stack Development with JHipster - Second Edition

By : Deepu K Sasidharan, Sendil Kumar Nellaiyapen
Book Image

Full Stack Development with JHipster - Second Edition

By: Deepu K Sasidharan, Sendil Kumar Nellaiyapen

Overview of this book

JHipster is an open source development platform that allows you to easily create web apps and microservices from scratch without spending time on wiring and integrating different technologies. Updated to include JHipster 6, Java 11, Spring Boot 2.1, Vue.js, and Istio, this second edition of Full Stack Development with JHipster will help you build full stack applications and microservices seamlessly. You'll start by understanding JHipster and its associated tools, along with the essentials of full stack development, before building a monolithic web app. You'll then learn the JHipster Domain Language (JDL) with entity modeling using JDL-Studio. With this book, you'll create production-ready web apps using Spring Boot, Spring Framework, Angular, and Bootstrap, and run tests and set up continuous integration pipelines with Jenkins. As you advance, you'll learn how to convert your monoliths to microservices and how to package your application for production with various deployment options, including Heroku and Google Cloud. You'll also learn about Docker and Kubernetes, along with an introduction to the Istio service mesh. Finally, you'll build your client-side with React and Vue.js and discover JHipster's best practices. By the end of the book, you'll be able to leverage the best tools available to build modern web apps.
Table of Contents (23 chapters)
1
Section 1: Getting Started with the JHipster Platform
4
Section 2: Building and Customizing Web Applications with JHipster
8
Section 3: Continuous Integration and Testing
11
Section 4: Converting Monoliths to Microservice Architecture
15
Section 5: Deployment of Microservices
18
Section 6: React and Vue.js for the Client Side

What this book covers

Chapter 1, Introduction to Modern Web Application Development, introduces two widely used full stack web application development architectures. It also lays out commonly faced challenges in full stack web application development.

Chapter 2, Getting Started with JHipster, introduces the JHipster platform. It will also give the reader a brief overview of different server-side, client-side, and database technology options offered by JHipster. This chapter will also provide instructions to install and use JHipster, and the various tools and options it supports.

Chapter 3, Building Monolithic Web Applications with JHipster, guides the user through the creation of production-ready Spring Boot and Angular web applications from scratch using JHipster and will take the reader through the generated code, screens, and concepts.

Chapter 4, Entity Modeling with JHipster Domain Language, introduces the reader to JHipster Domain Language (JDL) and will teach you about building business logic with entity modeling and entity creation using JDL and JDL-Studio.

Chapter 5, Customization and Further Development, guides the reader through further development of the generated application. It will also teach the reader more about using technologies such as Angular, Bootstrap, Spring Security, Spring MVC REST, and Spring Data.

Chapter 6, Testing and Continuous Integration, guides the reader through testing and setting up a continuous integration pipeline using Jenkins.

Chapter 7, Going into Production, shows the reader how to use Docker and how to build and package the app for production. It will also introduce the reader to some of the production cloud deployment options supported by JHipster.

Chapter 8, Microservice Server-Side Technologies, gives an overview of different options available in the JHipster microservice stack.

Chapter 9, Building Microservices with JHipster, guides the reader through converting a JHipster monolith web application into a full-fledged microservice architecture with a gateway, registry, monitoring console, and multiple microservices. It will also guide the reader through creating domain entities for the microservice architecture using JDL. It will also guide the reader through the generated code.

Chapter 10, Working with Microservices, guides the reader through running the generated applications locally. It will also guide the reader through the generated components, such as the JHipster Registry, JHipster Console, and API gateways.

Chapter 11, Deploying with Docker Compose, introduces the reader to advanced local and cloud deployment options for microservices. It will also guide the user through local deployment and testing of the generated microservice stack using Docker Compose and JHipster.

Chapter 12, Deploying to the Cloud with Kubernetes, guides the user through the Google Cloud deployment of the generated microservice stack using Kubernetes and JHipster. It will also introduce Istio and guide the reader through creating and deploying microservices with Istio on Kubernetes.

Chapter 13, Using React for the Client-Side, takes the user through generating an application with React on the client-side instead of Angular using JHipster.

Chapter 14, Using Vue.js for the Client-Side, takes the user through generating an application with Vue.js on the client-side instead of Angular using JHipster.

Chapter 15, Best Practices with JHipster, summarizes what the reader has learned so far and will suggest best practices and next steps to utilize the skills learned.