关于dao和service的设计问题
Java Web开发常使用dao-service-Action(Controller)这样分层开发。
上网查过dao是一个直接操作单个POJO对象的层,Service是通过调用多个Dao类,达到操作多个POJO类的目的。所以我觉得Service层要比Dao层高级。
Action(Controller)层是跟视图层(JSP等)交接的层,它直接调用Service层获取数据库数据。
但我的项目中,有些POJO类在业务逻辑上不需要配合其它POJO类一同操作,也就是Action(Controller)层直接调用Dao层对应的类即可。
我的问题是:Action(Controller)层中,有的类关联Service层,有的类直接关联Dao层。这样调用的会不会不好或者不规范?还是花功夫创建一个只调用单一一个Dao类的Service类?
这样我觉得Service类重复了dao类的功能,只为了统一Action(Controller)层都只关联Service层,这样的工作有点多余。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
service经常会整合一系列相关的事务性操作,可以粗略的认为是多个dao层方法的综合。
我觉得你不应该在此纠结,如果项目很小,单一存取,没有事物直接操作dao层是可以的,没必要片面追求分层明细。
不过我建议如果时间充足,还是要区分出来,这样项目之后的重构和可塑性会很好。
总之,不要太纠结这个问题。