关于web开发分层的问题
web开发的项目,基本上都是分成了这几个层次:显示层(jsp),控制层(action),服务层(service),数据访问层(DAO),模型层(javabean)。自己在做开发的过程中也是按照这几层进行的,但是就是照葫芦画瓢,不太了解其中的含义,有下面几个问题想请教一下:
DAO应该是做简单的CRUD操作的,Service层将DAO中的操作作为原料,拼成有意义的方法,提供给action层调用,那么:
1、DAO应该是一个接口,每张表都应该对应一个XxxDAOImpl类,这样导致了有很多XxxDAO类,使项目看起来很乱
2、Service也应该是一个接口,根据具体业务的不同对应不同的ServiceImpl类,但是不同的业务怎么能归纳出一个共同的接口呢?另外,这样也导致要写很多ServiceImpl类,是项目很复杂。
我想知道这样做是否有意义,如果这样不好,应该采取什么方法进行web开发,谢谢!