我计划深入研究 Spring 框架。我被该软件提供的庞大文档、注释系统和灵活性所吸引。 但是,在进一步讨论之前,我想就使用哪个模板引擎发表一些意见。
文档列出了这些模板系统:
- JSP/JSTL
- thymeleaf
- 瓷砖
- 自由创造者
- 速度
当然,我对众所周知的JSP有一个想法,其他的呢? 您可以根据这些问题来回答:
- 可读性
- 灵活性
- 易于使用
- 易于学习
- 持久品质
- 与客户端库 (AngularJS) 结合
- ...
提前致谢!
PS:抱歉我的英语水平......
最佳答案
嗯,你的问题在这里有点边界线,因为SO试图避免仅提供意见的答案。因此,我将尝试记录您所引用的框架的特殊性。但我必须承认,我认为好的或坏的只是我的意见......
JSP/JSTL 是基础,即使您计划使用其他框架,您也必须了解这个框架。主要品质:有广泛的文档记录,并且可以在调试器中单步执行(对初学者来说很好......)。主要缺点:太容易将java代码放在 View 中,并且控制语句很冗长。
Tiles:它本身并不生成 View ,而是组合其他(通常是 JSP)部分 View 来形成完整的页面,通常是页眉、页脚、菜单等。更多的是对 JSP/JSTL 的补充,而不是替代
速度/框架:真正的模板系统。这意味着它不会像 JSP 那样转换为 java servlet,但它们包含占位符并在运行时合并。事实上,两者都允许使用条件语句 (if
)、循环 (foreach
) 等控制语句,以及直接访问请求、响应、 session 和 servlet 上下文。主要优点:据说速度很快,Velocity 提供了一个与 Tiles 相差不远的 VelocitiyLayoutView
。主要缺点:据说会占用大量内存,有时看起来很简单的东西是不允许的(它们毕竟是模板系统而不是源解释器),而且 Spring Velocity 集成相当过时。
Thymeleaf:待记录(不知道,但如果有人想编辑我的帖子,请这样做)
关于java - Spring 框架: which template engine?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24691625/