@XmlRootElement is a JaxB annotation. This is not a Spring class but is part of the standard
Java libraries.
You often see it used in Spring however in conjunction with Spring's JaxB HTTP Message Converter. When you see an @RequestBody annotation on an object in a Spring controller, and the consumes attribute of the @RequestMapping annotation is "application/xml" (or pre spring 3.1 the Content-Type header is set to "application/xml") this will tell Spring that the payload of the request message is XML and needs to be unmarshalled to the object that was annotated with @RequestBody. In this case the object that was annotated with @RequestBody will typically be annotated itself with JAXb annotations to provide the meta data needed to marshal and unmarshal that object to/from XML, and @XmlRootElement is one of those annotations providing that metadata.
The java
doc for @XmlRootElement can be found
click --> JAVA DOCS
If you search this forum for 'Spring Book' you will see that the question has been answered many times before. The consensus seems to be Spring in Action 3rd edition is the best place to start.
If you are looking for a free resource try the
Spring Reference Documentation