Want to run your data access layer at high speeds?
1
Database Essentials Do you know how a relational database systems works behind the scenes?
2
JDBC® Do you know how the JDBC® Driver executes statements and how you can configure it to boost application performance?
3
JPA and Hibernate® Adding JPA and Hibernate® annotations is fairly easy. But, do you know the performance implications of each JPA or Hibernate feature your application makes heavy use of?
Great content
The first part aims to reduce the gap between application developers and database administrators.
For this reason, it covers both JDBC® and the database fundamentals that are of paramount importance when reducing transaction response times. In this first part, you'll learn about connection management, batch updates, statement caching, result set fetching and database transactions.
The second part demonstrates how you can take advantage of JPA and Hibernate® without compromising application performance.
In this second part, you'll learn about the most efficient Hibernate mappings (basic types, associations, inheritance), fetching best practices, caching and concurrency control mechanisms.
The third part is dedicated to jOOQâ„¢ and its powerful type-safe querying capabilities, like window functions, common table expressions, upsert, stored procedures and database functions.
What People Are Saying...
Rafael Winterhalter
Java Champion
There is no resource that better summarizes the performance implications of using JDBC, either directly or via JPA and Hibernate. If you are talking to a database on the JVM, add this book to your reading shelf.
Antonio Goncalves
Java Champion
Writing a book is difficult, but writing a book about performance and persistence is a real challenge.
If you want to understand how locking, sharding, replication, database concurrency control work, then this book is for you. Vlad gives you plenty of tips and tricks on Hibernate, helping you diagnose your performance issues (e.g. mapping, fetching, or caching).
I learn a lot by reading his book and I highly recommend it if you use relational databases and ORM tools such as Hibernate.
Markus Eisele
Java Champion
Object to database mapping is one of the core requirements in many Java EE related projects. And the available frameworks make it easy for their users to get started.
But as soon as you hit particular requirements around distributed transactions or performance you realise how much database and framework knowledge is required to implement them.
Vlad made his insane experience available in an easy-to-read book. If you are dealing with JPA or Hibernate, this book is a must read.
Lukas Eder
Java Champion
This book is a must-read for everyone aiming to push their relational databases to the limit with their Java application.
Simeon Malchev
Software engineer & enthusiast, creator of Vibur DBCP
This book is a highly recommended resource for every developer who is serious about learning and mastering the difficult topic of designing and implementing high performance Java database applications.
The book covers in detail the performance aspect of the plain JDBC and Hibernate programming, explains the theoretical and practical implications of the database transactions, and discusses some rare topics such as the database connection pool sizing and statement caching.
Eugen Paraschiv
Owner of Baeldung
Good books on persistence are few and far between. This is something else - it's deeply researched but also entirely practical. I'm basically using it as a reference for everything SQL. Plus, the transaction chapter is a must read.
Oracle®, Java®, MySQL® are registered trademarks of Oracle and/or its affiliates.
Microsoft® SQL Server® – Microsoft and Microsoft SQL Server are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.
PostgreSQL is a trademark or registered trademark of PostgreSQL Global Development Group.
Hibernate® is a trademark of Red Hat, Inc.
Spring® is a trademark of Broadcom Inc. and/or its subsidiaries.
jOOQâ„¢ is a trademark by Data Geekeryâ„¢ GmbH.
GitHub is a trademark of GitHub, Inc.
Manage Consent
To provide the best experiences, we use technologies like cookies to store and/or access device information. Consenting to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Not consenting or withdrawing consent, may adversely affect certain features and functions.
Functional
Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes.The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.