【发布时间】:2018-01-09 03:47:03
【问题描述】:
我需要 MVC 中服务层的确切用途。 我们可以在没有服务层的情况下实现.. 这些层的主要职责是什么.. 我们可以在没有任何这些层的情况下实现..
请有人帮我了解一下。
【问题讨论】:
标签: spring-mvc
我需要 MVC 中服务层的确切用途。 我们可以在没有服务层的情况下实现.. 这些层的主要职责是什么.. 我们可以在没有任何这些层的情况下实现..
请有人帮我了解一下。
【问题讨论】:
标签: spring-mvc
服务层提供逻辑来操作发送到 DAO 和客户端的数据。很多时候,这两部分会被捆绑到同一个模块中,偶尔也会被捆绑到同一个代码中,但您仍然会将它们视为不同的逻辑实体。
这可能对你有帮助
https://softwareengineering.stackexchange.com/questions/220909/service-layer-vs-dao-why-both
【讨论】:
DAO 非常轻巧,仅用于提供与数据库的连接,有时会被抽象化,以便可以使用不同的数据库后端。
服务层提供逻辑来操作发送到 DAO 和客户端的数据。很多时候,这两部分会被捆绑到同一个模块中,偶尔也会被捆绑到同一个代码中,但您仍然会将它们视为不同的逻辑实体。
是的,您可以在没有服务层的情况下实施,但会缺乏安全性。如果不使用服务层,请求和响应的工作速度会更快...
服务层的另一个原因是安全性 - 如果您提供与数据库无关的服务层,那么除了通过服务之外,从客户端获得对数据库的访问权限是否会更加困难。如果无法从客户端直接访问数据库(并且没有充当服务的普通 DAO 模块),那么接管客户端的攻击者所能做的就是在获得所有信息之前尝试破解服务层,但对您的数据进行最彻底的访问。
因为这些答案已经在 StackExchange.. 上由 gbjbaanb 回答了
【讨论】: