Действительно ли лучше всего использовать тег jstl out?
Вопрос
Я помню, как работал над проектом с группой разработчиков, и они всегда хотели статического
HTML-текст, который будет внутри выходного тега (<c:out value="words" />
). Я не помню почему
это был случай.
Это действительно лучшая практика при создании страниц JSP? Каковы Преимущества / недостатки такого подхода?
Решение
Это ужасная идея для статического текста. Тогда у вас не будет барьера в отношении того, что статично и что генерируется динамически.
Кроме того, в Servlet Spec 2.3+ динамический текст можно смешать со статическим текстом в виде:
Это статический, а не ${dynamic}
текст.
По моему опыту, единственные причины использовать теги c:out
:
Вы используете более старую спецификацию сервлета, и вам нужно, чтобы они каким-то образом выводили текст DYNAMIC
Вы хотите выйти из вывода HTML
, чтобы не использовать <>
и т. д., заменяя амперсанды их управляющими кодами и т. д.
В противном случае использование статического текста приводит в замешательство программиста или сопровождающего ... теперь, куда я поместил этот EL ? Это было в теге <=> ... но было и пятьдесят других строк статического текста!
Другие советы
Если вы просто печатаете простой текст, лучше сделать это в HTML. Преимущество тега c:out
заключается в том, что вы можете оценивать выражения внутри тега.
<c:out value="Hello ${user.firstName} ${user.lastName}"/>