Real World Java EE Night Hacks--Dissecting the Business Tier


The surprisingly successful book Real World Java EE Patterns--Rethinking Best Practices discusses the rethinking of legacy J2EE patterns. Now, Real World Java EE Night Hacks--Dissecting the Business Tier walks you through the Java EE 6 best practices and patterns used to create a real world application called "x-ray." X-ray is a high-performance blog statistics application built with nothing but vanilla Java EE 6 leveraging the synergies between the JAX-RS, EJB 3.1, JPA 2, and CDI 1.0 APIs. Topics covered include:
  • A brief introduction into the core principles of Java EE 6 (EJB 3.1, CDI, JPA, JTA,Dependency Injection, Convention over Configuration, interceptors, transactions, REST) using real world code
  • Unit and integration testing of Java EE 6 applications using JUnit and ScalaTest
  • Using interceptors for performance measuring and monitoring
  • Creating mocks with Mockito for EJB 3.1, CDI, JPA, and JAX-RS
  • Developing embedded integration tests with Arquillian
  • Productive use of JAX-RS, Contexts and Dependency Injection, EJB 3.1, and JPA
  • RESTful services and REST clients with Java EE 6
  • Convention over Configuration with Java EE 6
  • Effective component configuration with CDI and Convention over Configuration
  • Plug-in implementation with CDI
  • Transactional pub/sub without JMS based on CDI and EJB 3.1
  • Continuous integration with Maven 3, Mercurial/Git, and Hudson/Jenkins
  • Implementing configurable timers and asynchronous batch processing
  • Eventual consistency and high-performance deferred writes with Java EE 6
  • Real-time client and server monitoring with JMX and REST
  • Functional testing with FitNesse
  • Performing stress and load tests
  • Simplest possible, but maintainable, Java EE 6 design and architecture

Real World Java EE Night Hacks - Dissecting the Business Tier will benefit experienced developers and architects interested in code, not PowerPoint slides :-).

Foreword by James Gosling:
Most books for software developers are horizontal slices through some piece of the technological landscape. "X for Dummies" or "Everything you need to know about X." Breadth and lots of toy examples. This book takes a largely orthogonal approach, taking a vertical slice through a stack of technologies to get something very real done. Adam takes as his organizing principle one real Java EE application that is not a toy, and goes through it, almost line-by-line explaining what it does, and why. In many ways, it feels like John Lions', Lions' classic Commentary on UNIX 6th Edition.

One of the problems that people often have when they start looking at Java is that they get overwhelmed by the vast expanse of facilities available. Most of the APIs have the interesting property that the solution to any task tends to be pretty simple. The complexity is in finding that simple path. Adam's book shows a path to a solution for the problem he was trying to solve. You can treat it as an inspiration to find your own simple path to whatever problem you have at hand, and guidance on how various pieces fit together


Independent consultant and author Adam Bien http://blog.adam-bien.com is an Expert Group member for the Java EE 6/7, EJB 3.x, JAX-RS, JMS, and JPA 2.x JSRs. He has worked with Java technology since JDK 1.0 and with Servlets/EJB 1.0, and currently, he is as an independent architect and developer on Java SE, Java EE, and JavaFX projects. Adam has edited several books about JavaFX, J2EE, and Java EE, and he is the author of the bestselling Real World Java EE Patterns-Rethinking Best Practices. Adam is also a Java Champion and JavaOne 2009 Rock Star.