Spring 初次理解MVC 的controller和Service

我们都知道,标准主流现在的编程方式都是采用MVC综合设计模式,MVC本身不属于设计模式的一种,它描述的是一种结构,最终目的达到解耦,解耦说的意思是你更改某一层代码,不会影响我其他层代码,

controller层:可以看做是view和Model之间进行沟通的桥梁,可以分发用户的请求,并选择恰当的视图以用于显示,同时可以解释用户的输入并映射为模型层可以执行的操作。

控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Model ,然后再把该Model 返回给对应的View 进行展示。

service层:在接触Spring框架时会了解到面向接口编程,表示层调用控制层,控制层调用业务层,业务层调用数据访问层

初期也许都是new对象去调用下一层,比如你在业务层new一个DAO类的对象,调用DAO类方法访问数据库,这样写是不对的,因为在业务层中是不应该含有具体对象,最多只能有引用,如果有具体对象存在,就耦合了。当那个对象不存在,我还要修改业务的代码,这不符合逻辑。

接下来说service的意义,其实因为你做的练习分层次不是那么严格,在一个练习中业务本身也少,举个最简单的例子,你做一个分页的功能,数据1000条,你20条在一个页,你可以把这个功能写成工具类封装起来,然后在业务层里调用这个封装的方法,这才是业务里真正干得事,只要没访问数据库的,都要在业务里写。

理解图示如下:

                            

第一次写博客,如有不足之处请指出。

猜你喜欢

转载自blog.csdn.net/weixin_38497019/article/details/81140919