【问题标题】:Spring Boot, Thymeleaf and JS based techonology combination choice [closed]基于 Spring Boot、Thymeleaf 和 JS 的技术组合选择 [关闭]
【发布时间】:2019-02-03 12:19:18
【问题描述】:
作为 Java 企业界的老手,需要该领域专业人士的建议,因为在以下先决条件下,哪些技术最适合组合在一起以获得解决方案的问题正在苦苦挣扎。
- 易于重复使用和可自定义的 UI 组件,例如数据表和等
- 快速开发,无需为技术复杂性和知识匮乏而苦苦挣扎。
当前的技术栈
- 用于后端的 Spring Boot
- Spring Thymeleaf 用于结合 JQuery 的 UI 模板。
提出几个问题的其他可能的现代解决方案:
提出了以下问题:
- 将其中一种技术与 Spring 结合是否有意义,或者用它替换 Spring Thymeleaf 是否更好?
- 是否会简化 UI 的构建,或者组合会更加复杂,最好还是坚持使用 Thymeleaf 本身?
- Spring Thymeleaf 是否有其他解决方案可以加快开发速度?
附言我曾经使用 Apache Wicket 来构建可定制和可重用的 UI,一些基于社区 JQuery 的解决方案已经存在,但对于 Thymeleaf 接缝来说,还没有任何进展。
【问题讨论】:
标签:
jquery
reactjs
spring-boot
vue.js
thymeleaf
【解决方案1】:
像往常一样,关于您的问题,始终取决于您和您的截止日期。但是对于一般的想法,我可以说明以下内容:
可重用/可自定义的 UI:使用 Thymeleaf,您可以选择 Fragments,它可以被视为可重用的 UI 组件。如果您可以设计具有良好布局理念的 片段 和 模板,则可以将许多网站资产用作可重用组件。现在可以在 JS 库中轻松找到数据表和此类组件,其中大多数都经过良好测试和维护,因此您可以将任何这些 JS 库放入项目中并将它们用作客户端选项,我们是大部分时间在我们正在从事的 Thymeleaf 项目中这样做(在 Thymeleaf 中使用 JS 一开始可能很麻烦,但几个小时后就很容易使用了)。
快速开发:如果你像我一样是一个老式的 JAVA EE 人,最好坚持使用 Spring-Boot 和 Thymeleaf +jQuery(或任何其他支持的 JS 库)。 Thymeleaf 模板很简单,片段派上用场,内联脚本、i18n 和预处理是最需要注意的事项。Spring-Boot 非常简单,无需更多配置麻烦,并且可以与 Thymeleaf 一致地工作。如果您稍后决定将项目更改为 API,那么 Spring 还使您能够通过重构 Controller 方法来快速转换项目。
Angular/React/Vue 和问题:
这些新技术是当今 View/UI 的首选,因为它易于开发、模块化和适应性强。如果您愿意学习新事物并且有时间,那么您可以尝试其中的一种。我个人很喜欢 Vue.JS,它的易用性、模块化、灵活性和开发速度给我留下了深刻的印象。组件和重用是 Vue.JS 的灵魂,如果可重用性是您的主要目标,那么您可以尝试一下。
对于 thymeleaf,即用型组件是用于许多常见任务的 JS 库,例如数据表、日期/时间管理、数据格式化等。如果您知道如何使用 JS,而不仅仅是将所需的 JS 库添加到您的项目中并将其与 Thymeleaf 内联 JavaScript 选项一起使用。
最后一句话;