Могу ли я использовать разделители строк в StringTemplate? Если нет, что такое хороший шаблонный движок?
Мне нужен простой шаблонизатор, который выполняет только замену имен переменных (мне не нужны другие функции), и его можно настроить на использование разделителей, которые являются строками, а не символами. Например
new Template("Hello {{topic}}")
.add("topic", "world")
.render()
Должен вернуть "Hello world" (код java может измениться, меня больше интересует синтаксис шаблона)
Причина, по которой мне нужны многосимвольные разделители, заключается в том, что у меня есть несколько шаблонов, которые могут содержать всевозможные символы, и я хочу убедиться, что родные языки шаблонных документов (html, css, js) не конфликтуют с механизмом шаблонов.,
Прочитав этот пост, я попытался использовать StringTemplate, но я не уверен, поддерживает ли он разделители длиной более одного символа (Конструктор на ST
кажется, принимает символьные разделители вместо строк).
Поддерживает ли StringTemplates многосимвольные разделители? Если нет, какие-нибудь рекомендации другого простого механизма шаблонов, который работает с синтаксисом шаблона, который я описал выше?
2 ответа
Я думаю, что Velocity от Apache - лучший шаблонизатор. Мы используем его для многих вещей: генерация динамического HTML (вместо JSP), генерация XML вместо XSLT и т. Д.
Вы можете использовать символ Unicode, который не используется в ваших шаблонах.
новый ST("Привет" prop "", "" ', ' "').add("prop", "xxxxxx").render()