java写网站的时候是一个service里调用多个dao?

总感觉一个service为了掉用一个方法就加入一个dao进去会很麻烦如果一个dao就对应一个实体的操作,一个service只对应一个dao,那就需要一个action对应多... 总感觉一个service为了掉用一个方法就加入一个dao进去会很麻烦
如果一个dao就对应一个实体的操作,一个service只对应一个dao,那就需要一个action对应多个service来完成任务,但如果这个action操作的表很多,那service也要很多?还是说不太可能出现action操作多个表的可能?
展开
 我来答
zqhmfk
2013-05-26 · TA获得超过176个赞
知道小有建树答主
回答量:134
采纳率:0%
帮助的人:102万
展开全部
1 service()用于处理不同类型的业务,比如信息管理系统,里面有对新闻内容业务(增删改查)、对用户操作的业务(增删改查)。当业务非常多而某些业务又要经常更改(因为需求随时改变),所以可能出现多个service,就是把业务又细化了。还有当体统非常大时候我会采用分布式,这样可以减小服务器压力,而如果我们把不同dao写到一块就可能会出现系统慢如牛,因为采用的是分布式系统,不同业务模块在不同服务器。如北京服务器是处理1 新闻内容业务,上海服务器是处理2用户操作的业务,而新闻dao写在用户dao里面。当北京服务器我进行1业务时候还得通过网络进行远程调用新闻dao,而网络在高峰期时候可能出现1kb/s的情况,可想而知道该系统必将淘汰。
总结一下:当一些业务经常要修改我们要制定接口,当系统非常庞大也要制定接口。这样对系统的扩展和维护非常有用的。
更多追问追答
追问
1、一般dao是根据要访问的持久化类命名的么?比如有新闻类,然后就把dao命名为新闻dao?
2、一般细化过后可能一个dao里面只有一两个方法,我感觉因为要调用其中的方法而引入一个dao会不会不划算?那大型系统一般是一个稍微复杂的action会有几个service,然后这些service又有几个dao?
追答
1 上面的dao 命名方式在开发中并没有强制你如何一定要xxdao来命名,这样写就是一种行为规范,比如你离职了,而别人来交接的时候你的命名毫无规则,这就会让人家开发起来很吃力,这样写显得你专业。
2这不是划不划算的问题,现在的服务器几百G还会怕这点内存吗。对开发人员来说最大的痛苦就是当你完成一个模块的时候,那客户提出新需求改A模块(包括B、C模块),就不得不改这个模块了,而该这个模块原本只要B模块,而你为了测试次大模块A不得再次测试C模块。其中提问者的service是不是指业务,如果是的话就一般而言10个也不算多。如果说的是servlet的service()的话就一个了。
刚回来呵呵,希望能帮助你!
pengzhi143neng
2013-05-25 · TA获得超过454个赞
知道小有建树答主
回答量:378
采纳率:0%
帮助的人:189万
展开全部
不会吧,建议你写的时候写一个基础dao接口和基础service接口,这样就可以适当减少代码的冗余。
更多追问追答
追问
写了接口,但是调用的时候不是也需要添加dao接口,并配置吗?所以感觉麻烦
追答
额,那肯定要啊,service是业务层,要用dao来操作数据库。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-05-25
展开全部
根据实际情况而定,少的是不用、多的会好几个
更多追问追答
追问
dao一般是按什么命名和拆分的?
追答
按Entity为主。

service 按Dao和功能
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
海蓝_爱埋
2013-05-25 · TA获得超过496个赞
知道小有建树答主
回答量:462
采纳率:0%
帮助的人:334万
展开全部
用外观层隔开。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式