Architecting Modern Java EE Applications

Find out how to craft effective, business-oriented Java EE 8 applications that target customer’s demands in the age of Cloud platforms and container technology.
Preview in Mapt

Architecting Modern Java EE Applications

Sebastian Daschner

4 customer reviews
Find out how to craft effective, business-oriented Java EE 8 applications that target customer’s demands in the age of Cloud platforms and container technology.
Mapt Subscription
FREE
$29.99/m after trial
eBook
$28.00
RRP $39.99
Save 29%
Print + eBook
$49.99
RRP $49.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$28.00
$49.99
$29.99 p/m after trial
RRP $39.99
RRP $49.99
Subscription
eBook
Print + eBook
Start 14 Day Trial

Frequently bought together


Architecting Modern Java EE Applications Book Cover
Architecting Modern Java EE Applications
$ 39.99
$ 28.00
Understanding Software Book Cover
Understanding Software
$ 23.99
$ 16.80
Buy 2 for $34.30
Save $29.68
Add to Cart

Book Details

ISBN 139781788393850
Paperback442 pages

Book Description

Java EE 8 brings with it a load of features, mainly targeting newer architectures such as microservices, modernized security APIs, and cloud deployments. This book will teach you to design and develop modern, business-oriented applications using Java EE 8. It shows how to structure systems and applications, and how design patterns and Domain Driven Design aspects are realized in the age of Java EE 8. You will learn about the concepts and principles behind Java EE applications, and how to effect communication, persistence, technical and cross-cutting concerns, and asynchronous behavior.

This book covers Continuous Delivery, DevOps, infrastructure-as-code, containers, container orchestration technologies, such as Docker and Kubernetes, and why and especially how Java EE fits into this world. It also covers the requirements behind containerized, zero-dependency applications and how modern Java EE application servers support these approaches. You will also learn about automated, fast, and reliable software tests, in different test levels, scopes, and test technologies. This book covers the prerequisites and challenges of distributed systems that lead to microservice, shared-nothing architectures. The challenges and solutions of consistency versus scalability will further lead us to event sourcing, event-driven architectures, and the CQRS principle. This book also includes the nuts and bolts of application performance as well as how to realize resilience, logging, monitoring and tracing in a modern enterprise world. Last but not least the demands of securing enterprise systems are covered.

By the end, you will understand the ins and outs of Java EE so that you can make critical design decisions that not only live up to, but also surpass your clients' expectations.

Table of Contents

Chapter 1: Introduction
New demands in enterprise systems
Modern way of realizing enterprise systems
Relevance of Java EE in modern systems
Java EE 8 update and roadmap
Java Community Process
What to expect in the book
Chapter 2: Designing and Structuring Java Enterprise Applications
The purpose of enterprise applications
Outer enterprise project structure
Enterprise project code structure
Summary
Chapter 3: Implementing Modern Java Enterprise Applications
Use case boundaries
Core domain components of modern Java EE
Patterns in Java EE
External and cross-cutting concerns in enterprise applications
Flow of execution
Concepts and design principles of modern Java EE
Preserving maintainable code with high quality
Summary
Chapter 4: Lightweight Java EE
Lightweight enterprise technology
Why Java EE standards?
Convention over configuration
Dependency management of Java EE projects
Lightweight way of packaging applications
Java EE application servers
One application per application server
Summary
Chapter 5: Container and Cloud Environments with Java EE
Motivations and goals
Containers
Java EE in the container
Container orchestration frameworks
Realizing container orchestration
Java EE in orchestrated containers
12-factor applications and Java EE
Cloud, Cloud native, and their benefits
Summary
Chapter 6: Application Development Workflows
Motivation and goals of productive development workflows
Realizing development workflows
Workflows with Java EE
Continuous Delivery culture and team habits
Summary
Chapter 7: Testing
The necessity of tests
Requirements of well-crafted tests
What to test
Definition of test scopes
Implementing tests
Running tests locally
Maintaining test data and scenarios
Summary
Chapter 8: Microservices and System Architecture
Motivations behind distributed systems
Challenges of distribution
How to design systems landscapes
How to design system interfaces
Event sourcing, event-driven architectures, and CQRS
Communication
Microservice architectures
Implementing microservices with Java EE
Summary
Chapter 9: Monitoring, Performance, and Logging
Business metrics
Meeting performance requirements in distributed systems
Tackling performance issues
Technical metrics
Logging and tracing
Journaling
Tracing
Typical performance issues
Performance testing
Summary
Chapter 10: Security
Lessons learned from the past
Security in a modern world
Implementing security in Java EE applications
Summary
Chapter 11: Conclusion
Motivations in enterprise development
Cloud and Continuous Delivery
Relevance of Java EE
API updates introduced in Java EE 8
JCP and participation
MicroProfile
Eclipse Enterprise for Java
Chapter 12: Appendix: Links and further resources

What You Will Learn

  • What enterprise software engineers should focus on
  • Implement applications, packages, and components in a modern way
  • Design and structure application architectures
  • Discover how to realize technical and cross-cutting aspects
  • Get to grips with containers and container orchestration technology
  • Realize zero-dependency, 12-factor, and Cloud-native applications
  • Implement automated, fast, reliable, and maintainable software tests
  • Discover distributed system architectures and their requirements

Authors

Table of Contents

Chapter 1: Introduction
New demands in enterprise systems
Modern way of realizing enterprise systems
Relevance of Java EE in modern systems
Java EE 8 update and roadmap
Java Community Process
What to expect in the book
Chapter 2: Designing and Structuring Java Enterprise Applications
The purpose of enterprise applications
Outer enterprise project structure
Enterprise project code structure
Summary
Chapter 3: Implementing Modern Java Enterprise Applications
Use case boundaries
Core domain components of modern Java EE
Patterns in Java EE
External and cross-cutting concerns in enterprise applications
Flow of execution
Concepts and design principles of modern Java EE
Preserving maintainable code with high quality
Summary
Chapter 4: Lightweight Java EE
Lightweight enterprise technology
Why Java EE standards?
Convention over configuration
Dependency management of Java EE projects
Lightweight way of packaging applications
Java EE application servers
One application per application server
Summary
Chapter 5: Container and Cloud Environments with Java EE
Motivations and goals
Containers
Java EE in the container
Container orchestration frameworks
Realizing container orchestration
Java EE in orchestrated containers
12-factor applications and Java EE
Cloud, Cloud native, and their benefits
Summary
Chapter 6: Application Development Workflows
Motivation and goals of productive development workflows
Realizing development workflows
Workflows with Java EE
Continuous Delivery culture and team habits
Summary
Chapter 7: Testing
The necessity of tests
Requirements of well-crafted tests
What to test
Definition of test scopes
Implementing tests
Running tests locally
Maintaining test data and scenarios
Summary
Chapter 8: Microservices and System Architecture
Motivations behind distributed systems
Challenges of distribution
How to design systems landscapes
How to design system interfaces
Event sourcing, event-driven architectures, and CQRS
Communication
Microservice architectures
Implementing microservices with Java EE
Summary
Chapter 9: Monitoring, Performance, and Logging
Business metrics
Meeting performance requirements in distributed systems
Tackling performance issues
Technical metrics
Logging and tracing
Journaling
Tracing
Typical performance issues
Performance testing
Summary
Chapter 10: Security
Lessons learned from the past
Security in a modern world
Implementing security in Java EE applications
Summary
Chapter 11: Conclusion
Motivations in enterprise development
Cloud and Continuous Delivery
Relevance of Java EE
API updates introduced in Java EE 8
JCP and participation
MicroProfile
Eclipse Enterprise for Java
Chapter 12: Appendix: Links and further resources

Book Details

ISBN 139781788393850
Paperback442 pages
Read More
From 4 reviews

Read More Reviews

Recommended for You

Understanding Software Book Cover
Understanding Software
$ 23.99
$ 16.80
Java EE 8 Microservices Book Cover
Java EE 8 Microservices
$ 39.99
$ 28.00
Machine Learning: End-to-End guide for Java developers Book Cover
Machine Learning: End-to-End guide for Java developers
$ 75.99
$ 53.20
Java EE 8 High Performance Book Cover
Java EE 8 High Performance
$ 39.99
$ 28.00
Java: Data Science Made Easy Book Cover
Java: Data Science Made Easy
$ 67.99
$ 47.60
Java EE 8 Application Development Book Cover
Java EE 8 Application Development
$ 39.99
$ 28.00