考虑使用以下应用程序:
- 服务器端的 Spring Boot(带休眠、DAO 模式和 Oracle 数据库)
- 客户端的 AngularJS
- 用于通信的 REST API ( Spring REST )
传输数据最常用的方法是什么?在我之前的项目中,我使用了 DTO(带有 dozer),但它有数百个额外的类,浪费了开发时间,所以我决定寻找一个好的替代方案。
我听说过 jackson ?
手动创建 JSON?
使我的实体可序列化并直接发送它们?
2018 年更新
2 年后,我仍然在我的所有项目中使用用 jackson 序列化为 json 的 DTO 类,使用 spring 数据不是这里的重点,返回一个作为 DB 对象的实体不是一个好习惯,你可以使用@ JsonIgnore 实体的某些属性,但它不是很灵活。您可以使用您想要的或手工制作的映射器,在伟大的 JHipster 项目中使用的 MapStruct 似乎是一个不错的选择。
最佳答案
你应该看看Spring Data JPA与 Spring Data REST .我将它与 Angular 一起使用,它非常容易将您的业务模型公开为 Restful 端点。您可以使用 Hibernate 作为 JPA 提供者。使用 Spring Boot,您可以轻松创建一个将所有这些放在一起的项目,因此您无需执行任何操作。它可以为您节省大量时间。
过程是这样的:
- 您创建实体(模型)
- 您创建一个 JpaRepository
到此为止。生成 Restful 端点。
在前端我使用Restangular . 同样在许多情况下,您可以避免 DTO 并使用 excerpts and projections .
阅读本指南 Accessing JPA Data with REST .
关于angularjs - 使用 REST 将对象从 spring boot 转移到 angular 的最佳实践是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33297718/