Насчет апгрейда фреймворка и маленьких команд. Обычно выбирается фреймворк, последний на текущий момент версии и апгрейда нет, пока на это раельно не выделяется время бизнесом. Как правило маленькие команды не используют костыли для фреймворка(исключая )
Есть еще тема о фреймворках, что не стоит использовать фреймворк не заточенный под твою здачу. В контексте JAVA если тебе нужна 1 простая web-страница - не используй Spring