自学内容网 自学内容网

java全栈day14-后端Web实战3

引言:对于上节学的内容,若是想调用里面这个方法,很难调用(如果想用中间处理原始数据的方法,需要把前面的代码也要一起调用),所以提出分层耦合

一、分层解耦

1.1三层架构

三层架构划分和职责

对上节写的代码进行实际操作

在dao包里进行操作

在service包里进行操作

在controller包里进行操作

总结一下

小结

1.2三层架构扩展

修改代码

dao包修改

service包修改

controller修改

小结、

1.3分层耦合

前言:现在介绍一下解耦

解耦的思想:咱们这里有一个实现DeptServicelmpl1,咱们编写的程序当中controller层去调用Service层,-旦new这个对象:contrlger层就和Seryice层耦合了。
势必会用到Service层的对象,要什么对象直接new一个对象(DeptServicelmpl1),
1.所以要想解除耦合,这里就不能再new对象,
按刚才写的代码来说,下面要用到这个对象,而它还没有实例化处理,前端请求到达list方法;
因为service还没有实例化它的值为null(空指针异常),

2.可以为我们要使用的DeptServicelmpl1准备一个容器,可以理解为一个(map)集合,我们在项目中要用到哪个实现,那就把这个实现创建一个对象,并且把这个对象放到这个容器当中

3.当controller程序在运行的时候要用到deptservice这个类型的对象,接下来直接动态的到容器里面去找;如果需要访问deptservicelmpl2,则将它放入容器,1就不放入


原文地址:https://blog.csdn.net/xlsw_/article/details/144401148

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!