2011-11-27 151 views
3

我需要一個簡單的模板引擎,只做變量名替換(我不需要其他功能),並且可以配置爲使用的字符串,而不是字符分隔符。例如。我可以在StringTemplate中使用字符串分隔符嗎?如果不是,什麼是好的模板引擎?

new Template("Hello {{topic}}") 
    .add("topic", "world") 
    .render() 

應該返回的「Hello world」(Java代碼可以改變,我更關心的模板語法)

我想多字符分隔符的原因是,我有可能包含所有幾個模板類型的字符,並且希望確保模板化文檔(html,css,js)的本地語言不與模板引擎衝突。

reading this post後,我試圖用StringTemplate,但我不知道它是否支持是超過一個字符長(上ST構造似乎接受字符分隔符,而不是字符串)分隔符。

不StringTemplates支持多字符分隔符?如果不是,那麼使用上述模板語法的另一個簡單模板引擎的任何建議?

+0

不知道有關多字符StringTemplate的,但是使用' <>'非HTML/XML中的對,而HTML/XML中的'$'分隔符在我的經驗中效果很好。 – I82Much

+0

@ I82Much javascript中的'a ripper234

+0

我其實一直比較喜歡'$'符號,因爲我發現它很少與我正在使用的語言中的語法發生碰撞。 – I82Much

回答

2

我認爲速度由Apache是​​最好的模板引擎那裏。我們用它來做很多事情:生成動態HTML(而不是JSP),XML生成的,而不是XSLT等

+2

你有沒有機會給自己的代碼片段實現上面的模板,用自定義分隔符? – ripper234

2

你可以使用未在您的模板中使用Unicode字符。

新的ST( 「你好«道具»」,「« ''» ')。新增( 「託」, 「XXXXXX」)。渲染()

相關問題