Самый быстрый язык веб-шаблонов Java - PullRequest
2 голосов
/ 05 января 2011

Я собираюсь начать работу над новым проектом Spring MVC, и я изучаю различные варианты представления.Я никогда не был поклонником JSP, и в прошлом я сталкивался с проблемами производительности, связанными с JSP, поэтому я искал другие варианты.Я надеюсь, что где-то кто-то взял перепись различных вариантов (возможно, это будет я) и объявил, какие из них быстрые, или, по крайней мере, какие варианты есть.Вот варианты, о которых я подумал, упорядоченные от очевидного до странного:

  • JSP, JSTL
  • Скорость
  • FreeMarker
  • GSP (Groovy JSP)
  • ERB на платформе IronRuby или что-то в этом роде
  • Tea

Какие-либо предложения, личные предпочтения или другие полезные опции для списка?

Ответы [ 6 ]

7 голосов
/ 05 января 2011

StringTemplate - быстро, просто и помогает обеспечить разделение проблем MVC.В последний раз, когда я проверял, Spring Web MVC не предоставляет класс View для него, но я смог легко создать собственный .

5 голосов
/ 05 января 2011

Хотя я, вероятно, сам пошел бы с FreeMarker или Velocity, я удивлен тем, что вы называете

проблемами производительности, связанными с JSP

Из всех этих возможных решений,JSP, очевидно, наиболее эффективен.В конце концов, страницы JSP компилируются в классы сервлетов и выполняются из байтового кода, тогда как все другие упомянутые вами технологии интерпретируются.

Если у вас есть проблемы с производительностью, либо оптимизируйте код JSP, либо используйте JSP-компилятор, например JSPCпредварительно скомпилируйте страницы JSP (возможно, с помощью maven, используя JSPC-maven-plugin ).

3 голосов
/ 05 января 2011

Я предпочитаю скорость в эти дни. Производительность в порядке. Мне нравится естественный способ, которым это разъединяет шаблон и данные.

2 голосов
/ 05 января 2011

Я использовал Velocity.Проект немного стагнировал и имел некоторые известные проблемы, поэтому переключился на Freemarker.Я верю (не цитируйте меня) Freemarker появился, потому что Velocity потерял импульс.Никакой каламбур не предназначен.

С тех пор Velocity снова стала активной, по крайней мере, на некоторое время.Я предпочитаю Freemarker прямо сейчас, но любой из этих двух работает хорошо.Я бы предпочел использовать Spring MVC в зависимости от того, какой из них легче подключить.

0 голосов
/ 22 февраля 2012

Вы должны попробовать MVEL .Это быстрее, чем что-либо, что я знаю (включая StringTemplate), действительно мощно и похоже на скриптинг в простой Java.

0 голосов
/ 05 января 2011

Я согласен с Шоном Патриком Флойдом , что JSP должен быть очень быстрым.В большинстве случаев даже быстрее, чем другие движки шаблонов, даже если они кэшированы.

Если вы действительно столкнулись с проблемой производительности, связанной с JSP, чем я полагаю, вам следует переосмыслить способ использования JSP.

И, по крайней мере, если у вас есть горячая точка, которая вызывает проблемы с производительностью, вы можете построить эту (надеюсь) маленькую ручку (StringBuilder).

Итак, чтобы обернуть это: я считаю, JSPбыстрый (за исключением того, чтобы делать это вручную), но, с другой стороны, у вас должен быть особый вариант использования для решения проблемы перфорации с любым из упомянутых вами основных шаблонов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...