Book Image

Building Web Apps with Spring 5 and Angular

By : Ajitesh Kumar Shukla
Book Image

Building Web Apps with Spring 5 and Angular

By: Ajitesh Kumar Shukla

Overview of this book

Spring is the most popular application development framework being adopted by millions of developers around the world to create high performing, easily testable, reusable code. Its lightweight nature and extensibility helps you write robust and highly-scalable server-side web applications. Coupled with the power and efficiency of Angular, creating web applications has never been easier. If you want build end-to-end modern web application using Spring and Angular, then this book is for you. The book directly heads to show you how to create the backend with Spring, showing you how to configure the Spring MVC and handle Web requests. It will take you through the key aspects such as building REST API endpoints, using Hibernate, working with Junit 5 etc. Once you have secured and tested the backend, we will go ahead and start working on the front end with Angular. You will learn about fundamentals of Angular and Typescript and create an SPA using components, routing etc. Finally, you will see how to integrate both the applications with REST protocol and deploy the application using tools such as Jenkins and Docker.
Table of Contents (18 chapters)
Title Page
Credits
About the Author
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface

Design domain objects and database tables


Before moving ahead, let's design the Java POJOs and the related tables in the database. Let's recall that we are trying to create a Healthcare-based web application comprising of domain objects, such as doctors, patients, hospitals, and so on. The following are some the domain objects for the preceding mentioned application:

  • User
  • Doctor: For a doctor, one would want to record health centers where he/she makes a visit and, also, his/her qualification
  • Rx (representing prescription)
  • Medicine
  • Health centres (representing clinic, hospital, and so on)

The following are different tables, which can be created for capturing data related with preceding domain objects:

  • user
  • doctor
  • doctor_location
  • doctor_qualification
  • health_centre
  • medicine
  • rx
  • rx_medicine

Let's take a look at the Java code for one of the domain object and the related MySQL table code. Other domain objects and tables would follow a similar pattern of code.

User

The following code represents the Java code for...