This tutorial covers:
How to make key J2EE architectural choices, such as whether to use EJB and where to implement business logic
This tutorial also includes and discusses much generic infrastructure code that can be used in your apps.