What's the difference between declaring the TestController with the Spring Controller stereotype like this:

import org.springframework.stereotype.Controller;
//...
@Controller
@RequestMapping("/test")
public class TestController

versus as a subclass of the AbstractController like this:

import org.springframework.web.servlet.mvc.AbstractController;
//...
public class TestController extends AbstractController
1

There are 1 answers

3
Georgy Bolyuba On BEST ANSWER

The obvious difference is that with annotations you do not depend on any specific API.

Annotation configuration is available since Spring 2.5 and both configuration give you pretty much the same result. As of Spring 3.0 you cannot use second type of configuration (there simply no classes to extend) and so annotations is all you have.