【问题标题】:Apache Tiles retired. Alternatives?Apache Tiles 退休了。备择方案?
【发布时间】:2019-08-04 06:17:56
【问题描述】:

Apache Tiles 于 2018 年 12 月搬入阁楼。因此 Apache Tiles 已退役。

我正在使用 Spring MVC 框架和 JSP。

还有哪些选择?我看到了 Sitemesh,但它是一个装饰器,我需要一个模板框架。

我想维护我的图块并使用其他框架。这是一个很大的应用程序,所以我不能同时重写我的所有图块

有人可以帮帮我吗?

【问题讨论】:

  • 像 REACT 这样的面向组件/JS 的框架?或者你问的是基于 JSP 的东西?
  • 是的,我在问一些基于 JSP 的东西。所以我有很多jsp。
  • 您是否正在考虑为新框架重写 Tiles 文件?或者您只想维护您的 Tiles 页面并将另一个页面用于新页面?请说清楚。
  • 我想维护我的图块并使用其他框架。这是一个很大的应用程序,所以我不能同时重写我所有的图块......
  • 就我个人而言,我会让 Tiles 存在于项目中。更改视图框架绝非易事,尤其是在大型项目中。当您使用 Spring MVC 时,我会尝试为新视图采用新路径并开始设计/实现 REST 端点,这些端点会暴露您的应用程序逻辑。然后选择合适的现代框架,如 React、Angular 或 Vue,以便从浏览器中使用该 API。稍后,您将能够开始在那里迁移 Tiles 功能。

标签: spring jsp deprecated tiles sitemesh


【解决方案1】:

使用 Tiles 在 Apache Attic 中并不意味着您需要停止使用它。

除非您依赖它继续为您提供新功能和改进。

【讨论】:

  • 我愿意,但我不能。由于javax.servlet 已移至jakarta.servlet,因此新版本的 servlet-api 会破坏现有的切片依赖关系。
  • @msangel 愚蠢的论点。预计 javax.servlet 命名空间还能再使用 5 到 10 年。
【解决方案2】:

您可以尝试 Thymeleaf 或 Freemarker 或 mustache。所有这些库都与 Spring 应用程序集成,您应该在线获得大量示例以使其与您的应用程序一起使用。以下是各个网站的链接

https://www.thymeleaf.org/

https://github.com/spullara/mustache.java

https://freemarker.apache.org/

【讨论】:

  • 您好,我看到了选项,但 Thymeleaf 可用于 HTML,Freemark 和 Mustache 与 JSP 不兼容。
  • 钟摆一直在“以客户端为中心”和“以服务器为中心”之间来回摆动。 JSP(和 Tiles)之类的东西是“以服务器为中心的”(与旧的 IBM 3270 终端不同),如上所述:您可以继续使用 JSP 和 Tiles,只要您需要:没有理由停止。但对于“新项目”,请考虑公开 REST API(从服务器端),并在前端使用 Vue 或 Angular 等“以客户端为中心”的技术。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-12-28
  • 2013-01-02
  • 1970-01-01
  • 2011-06-25
  • 2023-03-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多