【问题标题】:What is the best approach to encapsulate business logic on rest application? [closed]在休息应用程序上封装业务逻辑的最佳方法是什么? [关闭]
【发布时间】:2015-01-26 13:49:48
【问题描述】:

我在一个使用 Resteasy、Spring、JPA 和 Hibernate 的项目中工作。

所有业务逻辑都位于控制器(Rest Service)上,我认为将此业务逻辑分离到另一层。

分离和重用业务逻辑的最佳方法是什么?在这个业务逻辑中,也有很多验证规则……

谢谢!

【问题讨论】:

  • 更具体地说明您用于开发 Restful 应用程序的内容。泽西岛对此here 有明确的文档。 Spring MVC 也有很好的文档here
  • @Cristian,对不起...我正在使用 Resteasy、Spring 和 JPA,并使用 Hibernate..
  • 如果您想在业务逻辑、验证等之间进行良好分离,请研究“核心 java ee 设计模式”

标签: java validation rest


【解决方案1】:

您考虑的是多层应用程序,好的。如果您将其用作 Web 服务器,则将输入验证保留在视图(javascript)和控制器层中是有利的。

在控制器和业务层之间进行简洁的界面设计,尊重 ACID(原子性+一致性+隔离性+持久性)是个好主意。

这样就不会出错了。

【讨论】:

  • 控制器内部的验证逻辑如何通过方法复用这个验证?
  • 控制器内部的验证逻辑已经在方法中。什么意思?
  • 例如..在休息服务中,我有一些使用此验证的方法...实际上我在这些方法上重复了此逻辑..是创建方法或类的最佳方法验证?
  • 业务层不负责输入验证工作。请参阅:如果您验证,您还必须处理错误。业务层只负责业务验证和业务错误处理。
  • 对.. 但是在控制器内部,我可以使用一些辅助类来验证字段吗?这种方法对重用有用吗?
猜你喜欢
  • 2020-01-05
  • 1970-01-01
  • 1970-01-01
  • 2020-04-26
  • 2020-09-24
  • 2023-03-20
  • 1970-01-01
  • 2015-11-07
  • 1970-01-01
相关资源
最近更新 更多