Chris Richardson
Salt Lake Software Symposium
Salt Lake City · June 16 - 17, 2006

Creator of Microservices.io
Chris Richardson is a developer and architect. He is a Java Champion, a JavaOne rock star and the author of POJOs in Action, which describes how to build enterprise Java applications with frameworks such as Spring and Hibernate. Chris was also the founder of the original CloudFoundry.com, an early Java PaaS for Amazon EC2.
Today, he is a recognized thought leader in microservices and speaks regularly at international conferences. Chris is the creator of Microservices.io, a pattern language for microservices, and is the author of the book Microservices Patterns. He provides microservices consulting and training to organizations that are adopting the microservice architecture and is working on Eventuate, which is an open-source microservices collaboration platform.
Presentations
Comparing EJB 3 with Spring and Hibernate
The limitations of EJB2 led to the development of the extremely popular Spring and Hibernate frameworks. These frameworks replaced the cumbersome EJB2 programming model with a nimble, non-invasive Plain Old Java Object (POJO) –based model. But, now, the EJB3 specification has embraced many of the ideas made popular by Spring and Hibernate including POJOs, transparent persistence and dependency injection.
Developing Rich Domain Models
Object-oriented design (OOD) is good way to tackle the complexity of modern applications. Yet many complex, enterprise Java applications are written in a procedural style. One reason is because EJB2 created too many obstacles to using object-oriented design techniques. Fortunately, enterprise Java technologies have improved. Plain Object Java Objects (POJOs) and object/relational mapping frameworks such as Hibernate, JDO and EJB3 led to the revival of OOD.
Business logic organization and encapsulation strategies
Key to making good design decisions is knowing the available options and understanding their respective benefits and drawbacks. This presentation looks at two important design decisions that you must make when developing the business logic for an enterprise Java application: how to organize the business logic and how to encapsulate the business logic.
The first part of the talk describes the two main ways to organize business logic: an object-oriented design (a.k.a domain model) and a procedural design (a.k.a. transaction script). You will learn how to implement the business logic using each of these approaches and which lightweight frameworks to use. We will cover the criteria that you can use to decide between the two approaches.