栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

为什么要使用服务层?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

为什么要使用服务层?

让服务层成为DAO的包装是一种常见的反模式。在你提供的示例中,它肯定不是很有用。使用服务层意味着你将获得以下好处:

  • 你需要在控制器中最好完成的Web类型活动和与Web不相关的常规业务逻辑之间做出明确区分。你可以与控制器逻辑分开测试与服务相关的业务逻辑。

  • 你可以指定事务行为,因此,如果你有多个数据访问对象的调用,则可以指定它们在同一事务中发生。在你的示例中,有一个对dao的初始调用,然后是一个循环,该循环可能包含更多的dao调用。将这些调用保留在一个事务中意味着数据库的工作量减少了(它不必为对Dao的每次调用都创建一个新的事务),但是更重要的是,这意味着检索到的数据将更加一致。

  • 你可以嵌套服务,以便如果一个服务具有不同的事务行为(需要自己的事务),则可以强制执行。

  • 你可以使用postCommit拦截器执行通知之类的操作,例如发送电子邮件,以免浪费控制器。

通常,我提供的服务包含针对单一类型用户的用例,该服务上的每种方法都是该用户将要执行的单个操作(在单个请求-响应周期中完成的工作),与你的示例不同,通常不只是在其中进行简单的数据访问对象调用。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/415097.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号