I would answer in a opinionated way as I have not used spring MVC much.
Use struts2 for
1)struts2 tags and
2)struts 2 plugins and
3)struts2 plugin framework using freemarker makes struts2-jquery-plugin and config-browser-plugin
The struts 2 convention allows you to create action class without even annotations and zero configuration in xml. Its just to make it look good in paper however in all real big projects you will need to write annotations.
If you get lost among annotations during runtime there is a way to find out the configuration in browser in dev mode, try config-browser-plugin.
Remember Struts/spring MVC consists of a very small part of a web application only upto the front controller.