Book Image

Java EE 8 Design Patterns and Best Practices

By : Rhuan Rocha, Joao Carlos Purificação
Book Image

Java EE 8 Design Patterns and Best Practices

By: Rhuan Rocha, Joao Carlos Purificação

Overview of this book

Patterns are essential design tools for Java developers. Java EE Design Patterns and Best Practices helps developers attain better code quality and progress to higher levels of architectural creativity by examining the purpose of each available pattern and demonstrating its implementation with various code examples. This book will take you through a number of patterns and their Java EE-specific implementations. In the beginning, you will learn the foundation for, and importance of, design patterns in Java EE, and then will move on to implement various patterns on the presentation tier, business tier, and integration tier. Further, you will explore the patterns involved in Aspect-Oriented Programming (AOP) and take a closer look at reactive patterns. Moving on, you will be introduced to modern architectural patterns involved in composing microservices and cloud-native applications. You will get acquainted with security patterns and operational patterns involved in scaling and monitoring, along with some patterns involved in deployment. By the end of the book, you will be able to efficiently address common problems faced when developing applications and will be comfortable working on scalable and maintainable projects of any size.
Table of Contents (20 chapters)
Title Page
Copyright and Credits
Dedication
Packt Upsell
Contributors
Preface
5
Aspect-Oriented Programming and Design Patterns
Index

Summary


In this chapter, we explored the fact that the main objective of the Business Delegate is to hide the details of service implementations from the presentation tier. We have also seen that, in some situations, its use has been replaced by CDI technology (this technology is responsible for injecting components into a typesafe way application, such as injecting an EJB component), but we believe that this is not enough. The Business Delegate is still widely used in the treatment of more technical exceptions—for example, when it has remote EJB calls. In addition, the delegate protects the presentation tier from possible changes in the service layer, and conversely, when there are types of clients other than a web browser, using a delegate makes it easier for these new clients to access services.

Session Façade centralizes business logic without exposing complex interactions that involve business objects to the client side. In addition, Session Façade encapsulates business-tier components...