汇智动力

售前免费咨询热线: 4 0 0 - 1 8 6 - 0 9 0 5
汇智资讯Huizhi information

当前位置:首页 »Spring的特性到底是什么?

Spring的特性到底是什么?

日期:2021-05-26 10:59:22 访问量: 来源:

spring之所以崛起是因为它有着最重要的特性-IOC!

IOC:即Inversion of control,意为控制反转,原本两个互相依赖的类,需要通过new对象的方式,然后提供方法调用,这样类中会出现大量的new(比如类中有十个方法,每个方法都要new一次),这个对象创建的方式是开发者自己主观控制的,而引入了IOC之后,通过依赖注入(DI,IOC的主要实现方式)需要依赖的类,然后会在运行使用的时候,由容器自行创建一个实例对象提供使用,实现了容器对对象的控制,这样就实现了对象控制的反转!

Spring的特性到底是什么

spring又是如何实现IOC的呢?我们知道spring项目会使用xml配置(bean定义)或者注解(@service.@component等)进行对象的定义,其中包括了需要管理的对象的类路径,在spring容器启动的时候,会通过BeanFactory(当然通常是这个接口的实现ApplicationContext)将类路径以hashMap的方式进行存储,然后再需要使用的时候取出类路径,再通过反射技术(class.forName)得到相应的实例对象,并把对象引用传递(注入)给依赖的类中,进行使用!

当然,除了IOC和DI,spring鼎鼎大名的还有AOP(Aspect Oreinted Programming)功能,意为面向切面编程,通过对一个方法的切入,可以在方法前置,后置等进行处理!对诸如日志打印,前置安全检验,拦截等都可以通过AOP进行实现,而原本的方法不需要感知这些操作,专注于业务功能开发,这样彻底解耦了技术和业务代码的实现!

Spring的特性到底是什么

不仅如此,spring还提供了对于其他功能框架良好的支持和扩展,比如缓存,事务,数据库连接,安全认证,测试等等都能有插件化的支持,方便基于spring搭建一套完整的,功能齐备的应用!

现在的spring家族,因为加入了springboot,springcloud等成熟,集成化的框架,对开发者来说更是福音!不仅对各种功能有着开箱即用的便利,还能快速搭建一套微服务,对于服务注册与发现,网关,雪崩熔断等都有集成使用!随着微服务的进程逐渐加快,可以说spring还必将大放光彩!

spring不仅解耦了对象关联,还解耦了业务和技术,同事提供了成熟的集成方案,是JAVA开发者没办法拒绝的框架

相关阅读Reading

全国热线:400-186-0905

总部热线:028-6547-1147

周一至周日9:30-24:00

我要咨询
汇智动力微信

汇智动力微信公众号