Books
Gary, a Principal Software Architect with Rocket Software, co-wrote Java Persistence with Hibernate 2nd Ed, JUnit in Action 2nd Ed, and Spring Batch in Action.
Java Persistence with Hibernate, 2nd Edition
Java Persistence with Hibernate, Second Edition explores Hibernate by developing an application that ties together hundreds of individual examples. You’ll immediately dig into the rich programming model of Hibernate, working through mappings, queries, fetching strategies, transactions, conversations, caching, and more. Along the way you’ll find a well-illustrated discussion of best practices in database design and optimization techniques. In this revised edition, authors Christian Bauer, Gavin King, and Gary Gregory cover Hibernate 5 in detail with the Java Persistence 2.1 standard (JSR 338). All examples have been updated for the latest Hibernate and Java EE specification versions.
Read it:
JUnit in Action, 2nd Edition
JUnit in Action, Second Edition is an entirely revised and up-to-date guide to unit testing Java applications. It provides techniques for solving real-world problems such as using mocks for testing isolation, in-container testing for Java EE and database applications, and test automation. In an example-driven style, it covers JUnit 4.8 innovations such as the new annotations that simplify test writing, improved exception handling, and the new assertion methods. Along the way, you’ll learn to integrate JUnit with other important open source frameworks and tools.
A third edition is available, which includes the previous edition.
Read it:
Spring Batch in Action
Spring Batch in Action is a thorough, in-depth guide to writing efficient batch applications. Starting with the basics, it discusses the best practices of batch jobs along with details of the Spring Batch framework. You’ll learn by working through dozens of practical, reusable examples in key areas like monitoring, tuning, enterprise integration, and automated testing.
No prior batch programming experience is required. Basic knowledge of Java and Spring is assumed.
Read it: