个人认为这是必须的~现在都提倡接口编程!接口编程方便每一层分工!方便每一层管理!它能修改其中一层而不影响宁一层代码!
个人的编程风格:提倡接口编程!数据访问层Dao,业务逻辑层BO层提倡都用接口编程!至于表现层现在通常都用STRUTS2.0,就不需要拉~
个人认为,这三层最好都有一个基本的接口类,实现类!实际开发每一个模块都继承和扩展这个基本接口或实现类!这样就可以有比较清晰的思路开发!也就是我们常用的SSH框架开发模式!

解决方案 »

  1.   

    DAO 可以写个通用的 但是service 必须要用
    因为 spring在service层进行事物管理
      

  2.   

    最好每个模块都有自己的DAO,而不要整个项目只用一个,这样可以减少团队开发的版本冲突问题
      

  3.   

    DAO层可以抽象出来  比如IBasicDao BasicDao,将CRUD功能在BasicDao中实现出来.这样模块DAO就可以extends BasicDao
      

  4.   

    facade模式倡导写一个大接口,将项目中所有的方法都写里面,结果可想而知,维护起来很不方便,虽说方法调用时相当方便,但维护成三高了,合作时也容易造成冲突,浪费了时间。每个模式写一个DAO,各个模式间冲突不大,某个模块出现问题时,很好维护,只要找到相应的DAO即可,而不用去找大篇幅的一个宏大的DAO类。
      

  5.   

    个人觉得如果dao只用一种实现就不用接口了,直接用abstract就行了,反对那种,每个人搞一套,浪费开发效率。如果你的实现有几套的话,就要用接口,比如dao要写两套,一套用jdbc,一套用hibernate。
      

  6.   

    dao层一些公用的方法可以抽象出来一个工具类。然后继承这个类。service层最好那样,各个模块都生成相应的接口和实现类。
      

  7.   

    DAO这个是要用的,对于小的项目当然是能省则省,Service这个也是必须的,不过DAO、Service分的越详细越好了,
    对于后期有利于维护、管理,和扩展。