![](/img/trans.png)
[英]Where the validation should be done in a 3 layers Entity-Repository-Service application?
[英]Where should business validation to be done
假设架构是这样的
尽管输入字段验证将在表示层即Struts Action类或jersey资源类中完成
但是我的问题是,应该在哪里进行业务级别验证,并将相同的结果传递给UI。
即假设资源是
employee / {employeeId}方法DELETE
现在,首先需要验证employeeId是否存在,因此对于验证应该在资源级别,外观级别或业务级别进行,并且最好将其作为最佳实践。
还请注意,此业务验证需要DAO层访问权限,因为要检查DB中EmployeeId是否确实存在。
提前致谢
针对您所要询问的方法有很多论据。 我更喜欢将验证留给业务层,而让上面的服务层或多或少地只处理路由和错误报告。 祝好运!
取决于您选择的体系结构和框架。
例如:如果您有一个数据库但有一个服务器场,则“验证”应该更靠近数据库。 如果可以在DAO中锁定/解锁数据库,则应在验证之前首先锁定员工行。
另外还取决于配置:
我建议您在dao层编写与逻辑相关的数据库访问,该访问将结果返回到服务层,并返回到Action类。 并且您应该在您的动作课程中对其进行验证。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.