PO OOP AOP IoC SOA全解

2024-06-23 12:58
文章标签 ioc oop aop po 全解 soa

本文主要是介绍PO OOP AOP IoC SOA全解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

名词解释


  • PO(Procedure Oriented,面向过程编程):以过程为中心,分析出解决问题所需要的步骤,然后把这些步骤一步一步实现。
  • OOP(Object Oriented Programming,面向对象编程):程序由单个能够起到子程序作用的单元或对象组合而成。OOP达到了软件工程的三个主要目标:重用性、灵活性和扩展性。为了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。
  • AOP(Aspect Oriented Programming,面向切面编程):通过预编译方式和运行期动态代理实现程序功能的统一维护。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,提高开发效率。
  • SOA(Service-Oriented Architecture,面向服务的体系结构):通过网络对松散耦合的粗粒度应用组件进行分布式部署、组合和使用。SOA是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义的接口进行通讯,不涉及底层编程接口和通讯模型。服务层是SOA的基础,可以直接被应用调用,从而有效控制系统中与软件代理交互的人为依赖性。

面向对象编程(AOP)将程序分解成各个层次的对象,面向切面编程(OOP)将程序运行过程分解成各个切面

Spring中IoC和AOP的理解

Spring的优点:
  1. 降低了组件之间的耦合性 ,实现了软件各层之间的解耦
  2. 可以使用便捷的众多服务,如事务管理,消息服务等
  3. 容器提供了AOP技术,利用它很容易实现如权限拦截,运行期监控等功能
  4. Spring对于主流的应用框架提供了集成支持,如HibernateJPA
  5. Spring属于低侵入式设计,代码的污染极低
  6. Spring的高度开放性,开发者可以自由选择Spring的部分或全部
IoC

控制反转(Inversion of Control)和依赖注入(Dependecy Injection)广义上讲是同一个概念,具体的讲:在Spring中创建被调用者的工作不再由调用者来完成,因此称为控制反转。创建被调用者的工作由Spring来完成,然后注入调用者,因此也称为依赖注入。

注入方式有设值注入和构造注入:设值注入直观,自然 。构造注入可以在构造器中决定依赖关系的顺序。

AOP

面向切面编程(AOP)在Spring中主要表现为两个方面
1. 面向切面编程提供声明式事务管理
2. Spring支持用户自定义的切面

IoC(工厂模式)容器是Spring的核心,AOP(代理模式)是Spring框架的重要组成部分

这篇关于PO OOP AOP IoC SOA全解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1087222

相关文章

java中VO PO DTO POJO BO DO对象的应用场景及使用方式

《java中VOPODTOPOJOBODO对象的应用场景及使用方式》文章介绍了Java开发中常用的几种对象类型及其应用场景,包括VO、PO、DTO、POJO、BO和DO等,并通过示例说明了它... 目录Java中VO PO DTO POJO BO DO对象的应用VO (View Object) - 视图对象

SSM项目使用AOP技术进行日志记录

本步骤只记录完成切面所需的必要代码 本人开发中遇到的问题: 切面一直切不进去,最后发现需要在springMVC的核心配置文件中中开启注解驱动才可以,只在spring的核心配置文件中开启是不会在web项目中生效的。 之后按照下面的代码进行配置,然后前端在访问controller层中的路径时即可观察到日志已经被正常记录到数据库,代码中有部分注释,看不懂的可以参照注释。接下来进入正题 1、导入m

SpringBoot中利用EasyExcel+aop实现一个通用Excel导出功能

一、结果展示 主要功能:可以根据前端传递的参数,导出指定列、指定行 1.1 案例一 前端页面 传递参数 {"excelName": "导出用户信息1725738666946","sheetName": "导出用户信息","fieldList": [{"fieldName": "userId","fieldDesc": "用户id"},{"fieldName": "age","fieldDe

Spring6详细学习笔记(IOC+AOP)

一、Spring系统架构介绍 1.1、定义 Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器(框架)。Spring官网 Spring是一款主流的Java EE 轻量级开源框架,目的是用于简化Java企业级引用的开发难度和开发周期。从简单性、可测试性和松耦合度的角度而言,任何Java应用都可以从Spring中受益。Spring框架提供自己提供功能外,还提供整合其他技术和框架

spring ioc容器的原理

1. IoC理论的背景 我们都知道,在采用面向对象方法设计的软件系统中,它的底层实现都是由N个对象组成的,所有的对象通过彼此的合作,最终实现系统的业务逻辑。 图1:软件系统中耦合的对象 如果我们打开机械式手表的后盖,就会看到与上面类似的情形,各个齿轮分别带动时针、分针和秒针顺时针旋转,从而在表盘上产生正确的时间。图1中描述的就是这样的一个齿轮组,它拥有多个独立的齿轮,这些齿轮相互啮合在一起,协

【2024高教社杯国赛C题】数学建模国赛建模过程+完整代码论文全解全析

你是否在寻找数学建模比赛的突破点?数学建模进阶思路! 作为经验丰富的数学建模团队,我们将为你带来2024国赛数学建模竞赛(C题)的全面解析。这个解决方案包不仅包括完整的代码实现,还有详尽的建模过程和解析,帮助你全面理解并掌握如何解决类似问题。 完整内容在文章末尾阅读全文获取! C题的第一问是: 假定各种农作物未来的预期销售量、种植成本、亩产量和销售价格相对于 2023 年保持稳定,每季

AOP之执行前通知@Before

Spring AOP之执行前通知@Before 此文章说一下执行前通知,即注解@Before。 作用 多用于日志记录、权限校验、初始化资源等。 触发时间 目标函数执行触发。 定义 public class AopBeforeAspect {@Before("execution(public * com.example.demo.service.impl.AccountServiceI

OOP三个基本特征:封装、继承、多态

OOP三个基本特征:封装、继承、多态 C++编程之—面向对象的三个基本特征 默认分类 2008-06-28 21:17:04 阅读12 评论1字号:大中小     面向对象的三个基本特征是:封装、继承、多态。     封装 封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。   封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信

【Redis】Redis Sentinel(哨兵)系统:自动故障恢复与高可用性配置全解

目录 哨兵 (Sentinel)基本概念主从复制的问题⼈⼯恢复主节点故障哨兵⾃动恢复主节点故障 安装部署 (基于 docker)准备⼯作 以下部分是独立于这一章节的Docker安装Server版本安装CentOS安装实战经验 GUI版本安装(以windows 11为例)安装docker 以上部分是独立于这一章节的重新选举redis-master 宕机之后redis-master 重启之

【2024高教社杯国赛A题】数学建模国赛建模过程+完整代码论文全解全析

你是否在寻找数学建模比赛的突破点?数学建模进阶思路! 作为经验丰富的数学建模团队,我们将为你带来2024国赛数学建模竞赛(A题)的全面解析。这个解决方案包不仅包括完整的代码实现,还有详尽的建模过程和解析,帮助你全面理解并掌握如何解决类似问题。 完整内容在文章末尾阅读全文获取! 【2024国赛A题】高教杯全国大学生数学建模国赛建模过程+完整代码论文全解全析已经完成 问题 1是给定舞龙队初