13.7.10

Benefits of @Repository annotation ( and Root of the hierarchy of data access exceptions ) in Spring Framework



There are a bunch of stereotype annotations in Spring. Most of time differences are not exactly known. For example we use @Component annotation for DAO classes for a long time in our company and it works. But we didn't know benefits of @Repository annotation till now.

If we want to summarize it, we can say that "By using @Repository annotation in DAO classes, different kinds of exceptions that belongs to many kinds of data access technologies will be transparently converted to standard DataAccessException classes of Spring"

Let's think about real life. In an enterprise project we may need more than one data access technologies like JPA, Hibernate or even JDBC. Each of them has its own benefits but all has their own exceptions. In that case exception handling can easily turns into a code hell.

Root of the hierarchy of data access exceptions adress this issue and gives us a bunch of classes that we can handle easily in a standart way. Thus we have a strong abstraction layer for data access exceptions and we can handle each exception case as we want.

Schema of data access exceptions classes is below;





[1] Root of the hierarchy of data access exceptions discussed in Expert One-On-One J2EE Design and Development. Please see Chapter 9 of this book for detailed discussion of the motivation for this package.

Hiç yorum yok:

Yorum Gönder