В моем последнем веб-приложении Spring 3.0 я использовал комбинацию:
Поля константных строк в моем классе контроллера для имен представлений
Файлы свойств со значениями, которые переопределяют значения полей, которые вставляются Spring через конфигурацию «context: property-override»:
<context:property-override location="classpath:viewName.properties"/>
Чтобы последний работал, вы должны либо перечислить все контроллеры как bean-компоненты в XML-файле конфигурации диспетчера, либо аннотировать ваш контроллер с помощью аннотации @Component("fooController")
(редактировать: не уверен, будет ли работать @Controller("fooController")
вместо этого?) а затем сослаться на поля в файле свойств следующим образом: fooController.someView=someJsp
.
Не уверен, что это "лучшая практика", но она работает достаточно хорошо для меня. Я обязательно добавляю комментарии к полям класса Controller, чтобы будущие разработчики искали переопределения в файле свойств.