Chapter 7. The Annotations Alternative
So far, we’ve been working with the XML mapping document as the starting point for our examples. In cases where you’re starting with just a concept and can leave the details of creating data tables and data objects to Hibernate, that remains a great option. The advent of Java 5’s flexible Annotation support opened up a very interesting alternate approach, however, especially for the common case where you’ve already got some objects written by the time that you’re thinking about how to save them to a database.
If you haven’t started using annotations yet, the code examples in this chapter will look a little strange, so it’s worth spending a minute or two to discuss the history and purpose of Java annotations. Basically, an annotation is a way to add information about a piece of code (in the Java world, typically a class, field, or method) to help tools understand how the code is being used, or to enable automation that saves you work. Rather than having a separate file, like a persistence mapping, to maintain in parallel with your source code, you would put that information right in the source code it affected. This way you are in no danger of a file separate from your source code becoming out of synch. Before Java 5 included robust support for this style of coding, people found a “back door” way of achieving it, by leveraging the extensible nature of the JavaDoc tools.
JavaDoc was a form of annotation that existed in Java ...