J2EE中 service层的作用,还有action为什么是调用IService,而不直接调用service层的方法,这不多此一举吗

DAO层也是,action调用的是IDAO而不是DAO层,为什么啊... DAO层也是,action调用的是IDAO而不是DAO层,为什么啊 展开
 我来答
F_U_C_K_IS
推荐于2017-11-28
知道答主
回答量:17
采纳率:0%
帮助的人:15.4万
展开全部
1、service层的作用:总体说一下MVC的各层,service为业务逻辑层,用来处理较细致的业务相关的流程(我说的是业务流程,非控制流程)等操作;action为控制层,用来控制各业务处理的走向,和处理系统前后台连接;DAO为数据连接及数据库处理,可以看做框架中数据处理与数据库操作的中间件。
2、IService与Service(dao等同):正因为service层需要专注于业务逻辑,且业务逻辑有时复杂有时简单,有时一套逻辑只需满足一套业务,有时一套逻辑需要同时满足多套业务(满足==符合),所以Service层需要保持伸缩性和可扩展性,由此衍生出松耦合性需要。由Service来根据目前的功能或业务需求来定义接口,让IService来负责具体实现,可以根据需要来多态、重载、扩充等等。
百度网友d659627
2011-09-10 · TA获得超过363个赞
知道小有建树答主
回答量:161
采纳率:0%
帮助的人:106万
展开全部
楼主,action嗲用的应该是Iservice吧?用接口就是为了易于维护。
楼主给你说个简单的例子吧。
比如你在DAO层(类名位ClassA)写个方法,public void print(){System.out.println("你好");}。
你在ClassB,ClassC,……中引用这个方法的话需要分别在这N个类中创建一个A的实例(静态方法不用创建,但是也需要多次调用A),即要写出N个ClassA a = new ClassA();
然后用a.print();
一旦修改类名,就要找到所有引用修改类名。
而如果你用了接口的话,ClassA implements ClassADAO,
这样不管你的实现类怎么样,只要接口名称不变,调用的地方就都不需要修改了。
(当然,myeclipse在你修改类名的时候,会帮你把所有的引用的地方修改了,这个例子只是告诉你,接口是为了易于维护的)也就是可维护性扩展性高。
这是比较简单易懂的接口的好处,具体还有很多。说得多了不好理解,需要慢慢积累
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiangjianfanj
2011-09-09 · 超过10用户采纳过TA的回答
知道答主
回答量:32
采纳率:0%
帮助的人:31.6万
展开全部
这个很简单,是体现了JAVA面向接口编程的理念,IService和IDAO仅是提供了一个接口,而真正实现的是在他们的实现类里,这样做有如下好处:
1:一个大的项目往往都是很多人共同合作开发出来的,模块与模块之间肯定是有关联的,比如我这个模块要调用你写好的方法,可是你又没有写好,这就体现了接口的好处了,你可以先把你要做的功能抽象出几个接口,我可以直接调用你写的接口,等你写好了,我也就写好了,是吧,只要你实现了接口的功能,返回了接口要的数据,我也就没问题了
2:接口也是为了规划类的管理和功能,用接口那个模块有什么功能一目了然,写一个类之前你是不是要知道他需要实现那些功能?你先写一个接口,然后再实现这些接口,就好比先有蓝图再有大楼(当然,这个不重要)
3:最重要的你可能觉得接口和类中的方法名一样调用那个不是一样?在实际效果上其实没什么分别,但是他不符合一种理念,因为接口是不变的,实现方法却是不断变化的,好比一个插座,他的插孔就是提供电的,只要返回电就行了,管你是交流还是直流的?就调用一个单一方法上看好像看不出他的优点,但是做个项目你就知道,需求都是抽像出许多接口,输入数据,返回数据给你,你去实现。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友e012363b8
2011-09-09
知道答主
回答量:21
采纳率:0%
帮助的人:9.6万
展开全部
service层作用就一个,处理复杂的业务逻辑。
在比较大型的系统中,由于处理的逻辑很复杂,一次请求可能要多次操作数据库,而如果就把这些调用dao层的代码写到action中,可是可以,但是不利于代码的维护和可以复用性,所有一般都会在dao层和action中间加上一个service层,将一些复杂的逻辑交给service层处理。
至于为什么是调用接口而不是实例类,我建议你去看一下工厂设计模式,很容易就懂了。当然你也可以直接调用实例类,加一个包就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chjwin
2011-09-09
知道答主
回答量:39
采纳率:0%
帮助的人:15.4万
展开全部
调用接口是为了方便与扩展和维护,你要搞清楚j2ee开发的思想,对扩展开放,对修改关闭!所有的设计模式都是基于这个的!你做的项目多了,就会深刻体会这些问题了!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式