Я работаю консультантом, и я видел много проектов, в которых разработчики начинали с сервлетов + JSP, потому что это то, что они знали, и с ними довольно просто начать работу. Тем не менее, это дает команде возможность / оправдание написать собственную платформу , которая более интересна, чем использование чужой платформы, и просто написание приложения .
По мере развития проекта команда изобретает все больше и больше колес, многие из которых заканчиваются квадрат . Вот где я вхожу в картину - добавление новых вещей в эту полугибкую платформу стало настолько сложным, что разработчики не могут продолжать добавлять функции и исправления ошибок без вызова подкреплений. Просто чтобы добавить оскорбление к травме, внутренние разработчики, как правило, являются теми, кому поручено делать скучные исправления ошибок, потому что исправления ошибок требуют большего знания кровавых недр того, что стало фирменной структурой персистентности и сети команды, и поэтому Черт возьми, консультанты делают новые, забавные вещи.
Теперь вам не следует использовать фреймворк только потому, что люди срыгивают посты друг друга в блогах о его удивительности, но вы также должны понимать, что существуют очень веские причины, почему существуют эти фреймворки (и почему они используются ). Если вы вообще не использовали веб-фреймворки, я бы порекомендовал вам взять Spring MVC, Wicket или что-то еще для тест-драйва. Они не решают все проблемы и вызывают некоторые из них самостоятельно, но в целом это обычно повышение производительности, особенно если вы создаете продвинутые пользовательские интерфейсы.
Я принимал участие в проектах, где простого JDBC было вполне достаточно для постоянства, и где не требовалось более совершенных веб-сред, чем сервлеты + JSP, но эти проекты составляют меньшинство. Без использования одной или двух рамок вы никогда не станете частью вашего меньшинства, которому он не нужен, или частью подавляющего большинства.