请问重复的业务逻辑应该写在baseaction里面还是service层里面?
有许多业务逻辑需要公用,目前我是写到baseaction里面,然后所有的Action都来继承这个base.
但是昨天听到有人说,action里面最好只用来控制view显示,业务逻辑都放到service里面,然后不同的action调用一个或多个serviceImpl来实现业务逻辑公用.
请问哪种实践好一点呢?我印象中service层只是来处理和数据库打交道的部分,调用一个或多个dao层来操作.其他非数据库的逻辑全部都放到action里面,是我理解错了吗?请指教
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
个人建议,写在service层里。
因为从软件分层的角度来说,各层负责各层的事务,下层为上层的提供服务。既然是业务逻辑有通用性,那就做好放在service里。
你可以写一个CommonService,里面放入公共service代码,然后再BaseAction里通过Spring注入CommonService,所有的Action继承这个BaseAction就可以。
简单的做
SERVICE里直接完成业务逻辑,并调用封装的DB操作
或者加个DOMAIN层 ,供SERVICE调用完成业务逻辑,SERVICE调用 DB 增删改查之类
补充一下,现在用的是struts2+spring