Gary Gregory has been involved with all aspects of software development for the past 20 years and has co-authored three books on Java: Java Persistence with Hibernate, Second Edition, JUnit in Action, Second Edition, and Spring Batch in Action. He has lead software development teams and delivered products. He is experienced in all aspects of software development: design, development, requirements analysis, technology assessment, documentation, and project management. He has been a team leader for developing system architecture, components, and frameworks including RDBMS interfaces and object-oriented class libraries. Previously, Mr. Gregory has delivered application servers for Rocket Software, Seagull Software, object-oriented tools for ParcPlace-Digialk and relational database frameworks for Nevis Technologies and Ashton-Tate. He graduated from the University of California at Los Angeles with a B.A. in Linguistics and Computer Science. He is an active member of The Apache Software Foundation, the Apache Project Management Committees for the Commons, Logging (Log4j), HttpComponents and Xalan projects.