在Spring MVC中使用Service和DAO Layer

时间:2018-01-09 03:47:03

标签: spring-mvc

我需要MVC中服务层的确切目的。 我们可以实现没有服务层.. 这些层的主要职责是什么.. 我们可以在没有任何这些层的情况下实施..

有人能帮助我知道这件事吗。

2 个答案:

答案 0 :(得分:1)

服务层用于提供逻辑来操作发送到DAO和客户端的数据。通常这两个部分将捆绑在一起放在同一个模块中,偶尔会放在相同的代码中,但您仍然会将它们视为不同的逻辑实体。

这可能对您有所帮助

https://softwareengineering.stackexchange.com/questions/220909/service-layer-vs-dao-why-both

答案 1 :(得分:1)

DAO很轻,只是为了提供与DB的连接而存在,有时被抽象,因此可以使用不同的DB后端。

服务层用于提供逻辑来操作发送到DAO和客户端的数据。通常这两个部分将捆绑在一起放在同一个模块中,偶尔也会放在相同的代码中,但您仍然会将它们视为不同的逻辑实体。

是的,您可以在没有服务层的情况下实施,但缺乏安全性。如果不使用服务层,请求和响应的工作速度会更快......

服务层的另一个原因是安全性 - 如果提供与数据库无关的服务层,那么除了通过服务从客户端访问数据库更加困难。如果无法直接从客户端访问数据库(并且没有简单的DAO模块作为服务),那么接管客户端的所有攻击者都可以尝试破解服务层,除非是最清洁的数据访问权限。

由于这些答案已在StackExchange上得到解答..由gbjbaanb