我的看法:web
实际开发中,若是业务不复杂,service层和DAO层不少方法都是同样的,这时候为了提升开发效率,通常都是抽取出一个数据访问层,即去除service层,让咱们的action或者controller直接操纵咱们的数据访问层,这里的数据访问层你能够理解为DAO层,不过是有一些改变的,若是业务复杂的话,建议仍是使用service层,由于业务逻辑最好放到service,Service除了引用DAO来操做数据库外,还要进行业务逻辑的处理,不是单纯的只是调用DAO,还有事务控制和处理都是也是在service层。数据库
Java web开发之因此须要service,缘由有如下几点:
一、前台接收到的数据须要进行必定逻辑处理以后存入数据库
二、保持数据完整性,须要向多个表内存入数据,必须引入事务
三、接收前台数据和数据库反馈,须要相应做出反应给用户
四、外设接口和非数据库数据提取
五、有利于业务业务层独立 接口