6

有谁知道本质上类似于Enlive的 java 模板库?

对页面使用纯 html 的概念,内部没有任何标记,并使用等效的 CSS 选择器来使用动态数据填充页面,这对我来说似乎很不错。

有关我正在寻找哪种模板的更多信息,请查看此博客文章以获取示例。

我知道可以在 Java 中创建 Enlive 包装器并使用它,但我正在研究现有的 Java 替代方案。

4

3 回答 3

6

如果还不算太晚,我建议您看看Moulder,这是一个模板库,通过从原始模板中选择元素并对其应用转换来生成页面。有关该主题的更多资源:

免责声明:我是这个库的作者。

于 2011-07-08T08:43:00.267 回答
4

因为 enlive 依赖于 clojure 的优雅表达来发挥它的魔力,所以 java 中的实现可能会失去这种魔力。

“Enlive 的模板方法是功能性的,并且将设计和表示逻辑解耦。” 和“这里有一种控制反转。在大多数主流模板系统中,模板驱动表示逻辑。”。这可能需要广泛使用“访问者模式”才能在海峡 java 库中完成。

将需要暴露给非 Clojure 世界的部分进行 java 包装可能会更好。并在 clojure 中编写您的模板。尽管我知道有很多充分的理由说明这种方法可能不适合您的项目/组织。

于 2011-06-22T21:10:39.437 回答
2

前几天晚上,我在 ScalaExchange 上观看 James Strachan关于 Scalate 的主题演讲。

它是一个包含一组模板语言的模板引擎。我一直在研究它以使用 Mustache 部分,但其中有一个名为 Scuery 的模板系统,它也基于 CSS/JQuery 之类的选择器。

实际上,这是一个很好的演示文稿,展示了广泛的模板解决方案的实现。Scaml + Markdown 看起来也很不错。

严格来说它是 scala,但是 AFAICT 你可以只使用 Java 的 API。当然,一些模板语言嵌入了基于 scala 的 DSL。

于 2011-06-22T21:51:51.450 回答