servlet去调service,然后再去调用dao

来源:3-1 实体创建

哇哦88888888

2020-02-28 08:05:37

老师,你在视频里面讲的时候,servlet去调service,然后再去调用dao,这个步骤感觉太麻烦了,这里面多用一个接口,这样设计有什么好处呢,sevlet拿到请求数据之后,直接去操作数据库或者处理数据不是更容易理解和方便吗

写回答

1回答

好帮手慕阿莹

2020-02-28

  • 1、这个是为了让我们的代码实现低耦合,也就是不要让代码有太强的关联性,不然如果需要修改一处,那么很有可能就是要修改很多地方了。

http://img.mukewang.com/climg/5e58afcc0965ef8510510360.jpg

同学不理解是因为现在的工程中还没有涉及到业务逻辑。

举个例子

查询一个id是 1的图书。现在呢,这个图书在打折,9折。 

我们可以在Servlet中接收页面传给我们的id。调用Service中通过id查询的方法。然后Service再调用dao中通过id查询的方法。

同学可能觉得,这不是多此一举吗?直接在servlet中调用Dao中的方法不就可以了吗?

但是比如遇上打折呢?我们就把查询出来的图书,给它的价格改动一下再返回给Servlet。

Servlet就只管接收参数去调用Service ,Dao就直管查询数据。

而具体的业务逻辑就交给Service了。比如,给查询出来的图书价格乘以0.9 ,再把打完折的图书返回给Servlet。

这个是简单的业务逻辑,在实际工作中,有更为复杂的业务逻辑,为了让代码更加清晰,我们让它们各司其职,把业务处理都交给service。把查询交给dao。把参数的接收等交给servlet。

这里是为了让同学习惯这种开发方式,这个题目中基本上没有涉及到业务处理。同学可以在service的方法中直接调用dao中对应的方法就可以了。


如果我的回答解决了你的疑惑,请采纳!祝学习愉快!


0

0 学习 · 8016 问题

查看课程