关于Springboot理解

面向对象五大基本原则

graph LR A(面向对象五大原则);B(单一职责原则);C(开放封闭原则);D(里式替换原则);E(依赖倒置原则);F(接口隔离原则); A---B;A---C;A---D;A---E;A---F; B-->b[一个类只负责一个明确的职责或功能]; C-->c[实体类对拓展开放,对修改封闭 拓展现有代码实现新功能,而非修改原有代码]; D-->d[子类对象能够替换父类对象,并且程序行为不会发生改变,要点:<ol><li>子类在继承父类时,必须实现父类中所有的抽象方法</li><li>子类在可以在实现父类的抽象方法时,增加自己的特殊行为,但不能修改父类的数显逻辑</li><li>子类的前置条件,如: 接收的参数 调用的方法等,不能比父类更加限制</li><li>子类的后置条件,如: 返回值 抛出的异常等,不能比父类更宽松</li><li>子类的方法不能抛出父类方法未声明的异常</li></ol>]; E-->e[依赖关系应该通过接口或抽象类来建立,不通过具体的实现类, 要点:<ol><li>高层模块应该定义一个抽象接口或抽象类,用于定义它所依赖的低层模块的行为</li><li>低层模块应该实现高层模块定义的抽象接口或抽象类,提供具体的实现</li><li>高层模块应该通过抽象接口或抽象类来依赖低层模块,而不是直接依赖具体的实现类</li></ol>] F-->f[将庞大的接口拆分成更小的 更具体的接口 以避免接口过于臃肿和不必要的依赖关系,要点:<ol><li>接口应该只包含客户端需要的方法 不应该包含不相关或不必要的方法 一个接口应该具有单一责任 只负责一个特定的功能或行为</li><li>客户端只依赖所需要接口 而不依赖不需要接口</li><li>接口设计应该经过合理的考虑和分析 避免频繁变更和修改</li></ol>]

Spring Boot五层架构

flowchart LR subgraph 五层架构 direction TB A(Web层/表现层);B(Controller层);C(Service层);D(Mapper层/Dao层);F(数据库); A<-- Vo -->B; B-- Dto -->C; C<-- Po -->D; D<-- Pojo/entity -->F; end subgraph 各层作用 direction LR A2(Web层/表现层)-->a(负责接收用户请求并展示处理结果,表现层通常由前端页面 前端控制器 和视图解析器等组成,与用户交互,接收用户输入,将请求传递给控制层处理,并将处理结果展示给用户); B2(Controller层)-->b(负责接收表现层传递过来的请求,处理请求并调用服务层逻辑处理业务逻辑); C2(Service层)-->c(负责处理业务逻辑和业务规则.服务层包含业务逻辑的具体实现,通常用来协调各个业务功能的调用,同时也可以包含事务管理等业务逻辑.); D2(Mapper层/Dao层)-->d(负责与数据库进行交互,执行数据持久化操作.持久层包含数据访问对象Dao或仓储类Repository或Mapper类,用于执行数据库的CRUD操作.); end 五层架构-->各层作用
posted @ 2024-08-12 11:12  Bean_sprout  阅读(22)  评论(0)    收藏  举报