为什么要把DAO作为接口 再用impl类来实现?

来源:2-1 Action、Service、Dao的创建及配置

Boler_MGL

2016-09-24 15:57

在写EmployeeDAO和EmployeeService的时候为什么一定要用接口呢   不可以直接写实现类吗 或者这么做的好处是什么啊

写回答 关注

2回答

  • Boler_MGL
    2016-09-26 00:39:47

    哈哈 懂啦  用接口来分离调用类和他的具体实现    这样后期维护也方便  也可以算是低耦合吧

  • java家洼
    2016-09-24 18:20:05

    这样做是为了后期的维护。当软件全部编好了,测试好了,然后给用户装好了,但是过一段时间,用户用着不爽,他又让做软件的人改变一些功能,这样软件开发人员只需要改实现类里面的代码,也就是只用改一个包下代码,不用这个包改一下,那个包里的代码还要改。因为项目大了,代码就是成万上亿行。用了接口的话,就起了这个作用,我举个生活中的例子:就好比你家突然停电了,经过你的一番检查,发现是一处电线断了,这时候你只需要把电线里面的铜丝或者铝丝接上,就好了,而不用把电线外面的绝缘皮剥了,然后再接铜丝或者铝丝。可能说的意思不太对,但是就是这个意思。

    另外,不用接口的话,假如修改了dao中的代码,因为service引用了dao中的类,那么也要改变service里面的代码,改完之后要重新编译运行,当项目比较大的时候,编译和运行很浪费时间的,而且会产生一些意外(我听老师说的,我还没遇见过),本来只要编译dao中的代码,现在不光要编译dao中的代码,还要编译service。因为你不用接口,间接着action里的代码也要改,因为action中引用了service中的类,到最后,就变成了,牵一发而动全身。本来在各个层之间用了接口只需要改一处代码的,这下可好,全要改,再举个不太恰当的例子:好比,我摔了一跤,小腿摔断了,小腿断了,因为没用接口,间接着,大腿也断了,接着,屁股开花了,接着,上身也感染了。最后gg了。可能不太恰当,但是有助于你理解。

    Boler_...

    谢谢啦 在别的地方看到的也差不多都是这个意思 主要就是为了分离那两个类 以便后期维护

    2016-09-26 00:41:11

    共 1 条回复 >

基于SSH实现员工管理系统之案例实现篇

SSH框架整合案例之实现篇,手把手带你实现员工管理系统

50212 学习 · 323 问题

查看课程

相似问题