【问题标题】:Moving from JSF/Spring to Rest API + Angular从 JSF/Spring 迁移到 Rest API + Angular
【发布时间】:2018-01-17 19:12:25
【问题描述】:

有一个项目是使用 JSF 和 Spring Integration 构建的。 请参阅https://www.tutorialspoint.com/jsf/jsf_spring_integration.htm 了解一下。 JSP 用于 html 模板。托管 bean(JSF 的一部分)使用 Spring bean 作为托管属性,进而驱动业务逻辑。目标是拆分这个项目并将其拆分为 RESTful 服务和 Angular 前端。 在不重写所有内容的情况下,最好的方法是什么。我可以去掉哪些组件,哪些组件可以重复使用?如果我使用 Spring Boot 构建 REST API,我可以重复使用 Spring bean 吗?

编辑:我对这些技术中的大多数都是新手。

【问题讨论】:

    标签: spring angular rest jsp jsf


    【解决方案1】:

    通过 REST 公开您的域模型应该使用 Spring/JPA 相对简单,无论如何。您应该了解 DTO,尤其是涉及到 Hibernate/JPA/Spring Data 等下的“延迟初始化”问题。

    其次理解领域模型中视图的概念。例如,航运与营销不同地看待数据库。相同的数据库、不同的“外观”或具有不同 DTO 集的业务层。

    从概念上讲,在 Angular 中重现 JSF 前端是同时“相同的东西”和“完全不同的”。恕我直言,关键区别在于 Angular/React/Vue 或任何您想在前端使用的 JavaScript 概念和范例。

    考虑到 AngularJS/React/Vue 前端可能最好在单独的容器或服务器中运行在 node.js 之上,并且可能具有它自己访问的不同数据库,例如忠诚度积分或货币转换,等等。不要害怕让前端人员“成为”应用程序而不是后端人员。在后端,尽量不要丢失信息。例如,如果客户添加 3 件商品,然后更改 1 件,然后下订单,这是 3 条单独的信息,而不是 1 份订单。这对于业务分析和客户服务很重要,它们是面向业务的服务,而不是面向客户的服务。

    作为一名 Java 开发人员,我倾向于认为 Angular/JS 开发人员所做的工作与我完全不同且不重叠。我对 HTML/CSS 的人也有同样的感觉。因此,我不建议您尝试两者兼而有之,您会使自己太瘦。但是,像您建议的那样,在较小的项目上具备良好的工作知识肯定是有用的。

    欢迎来到 SO。您的帖子可能会因为过于广泛等而被关闭/忽略。非常具体的问题和答案是该网站的内容。总账。

    【讨论】:

    • 谢谢。作为澄清,该项目实际上非常庞大。提供的链接只是一个示例。
    • 其次学习/理解域模型中的视图概念。例如,航运与营销不同地看待数据库。相同的数据库、不同的“外观”或业务层以及与之配套的一组不同的 DTO。查看修改。
    猜你喜欢
    • 2013-01-27
    • 2015-10-17
    • 1970-01-01
    • 1970-01-01
    • 2011-03-25
    • 1970-01-01
    • 2018-09-03
    相关资源
    最近更新 更多