Java开发——三层架构,分层耦合
在软件设计中尽量在一个类中只做一件事,只有一个功能,所以需要吧上述代码每个功能在定义到每个类中,所以采用三层架构的方式。
三层架构:
前端发送请求先访问Controller层->但并不进行逻辑处理需要在调用Service层->Service需要在调用Dao层拿数据->然后再返回Service进行逻辑处理->处理完成再将处理后的数据返回给Controller然后再相应给前端。
Controller层
Controller:控制层,接受前端发送的请求,对进行处理,并相应数据。
将代码进行拆分:
Service层
Service:业务逻辑层,处理具体的业务逻辑。
dao层
dao:数据访问层(持久层),负责数据访问读取操作,包括数据的增删改查。
将上述代码进行拆分:
小结
1.为什么要对代码进行拆分?
遵循单一职责原则,便于复用、后期维护
2.拆分为了哪三层?每一层的职责是什么?
·controller:接受请求,响应数据
·service:逻辑处理
dao:数据访问
分层耦合:
耦合:衡量软件中各个层/各个模块的依赖关系程度。
内聚:软件中各个功能模块内部的功能联系。
软件设计原则:高内聚低耦合。
内聚:模块内的功能联系
耦合:层与层或模块与模块之间联系较少。
为什么要高内聚低耦合:
代码中有三个模块,要改某一块代码,三个都要改如何解决这个问题,就要进行解耦。
需要加入一个容器。
加入一个容器的方法就是加一个注释,
dao:
service:
Controller:
小结:
IOC详解:
DI详解: