具有JPA实体的RESTful客户端

时间:2014-11-12 17:01:58

标签: java hibernate rest jpa

我将开发一个使用RESTfull服务的应用程序,并且我将使用JPA / Hibernate作为ORM。 我已经使用了这两种技术,但不是在一个应用程序中。

由于客户端没有状态,因此在数据或服务层使用状态完整实体意味着更少。并且还有双向映射。

我认为JPA的CASCADE选项不起作用,而不是在客户端进行更新时会破坏数据。

所以我在思考的是detach对象,然后再向客户提供服务, 如果有更新(PUT)请求,则只传递父对象并仅更新父对象。所以我想不能使用CASCADE选项。

当它是删除(DELETE)请求时,我必须手动执行CASCADE操作。

我认为,在实体之间建立关系可能是一个问题。

有人能解释一下这种情况吗? 这种方法是否正确? 在这种情况下是否有最好的做法?

谢谢!

1 个答案:

答案 0 :(得分:2)

请勿将您的商家实体混合到网络图层中。

我建议您将业务层与Web层分离,从而创建新的JAXB annotatted实体,以便从REST控制器返回。

如果你想让你的工作变得轻松,有很多库可以将1个bean复制到另一个bean。例如Apache BeanUtils.class。