Spring_IOC(控制反转)剖析
  xG3Gf8m6XbKr 2023年12月22日 13 0

一 Spring概述 Spring是分层的 Java SE/EE应用 **full-stack(**全栈式) 轻量级开源框架。 Spring是非侵入式的:典型的,spring应用中的对象不依赖spring特定类。 Spring提供了表现层 SpringMVC和持久层 Spring JDBC Template以及 业务层 事务管理等众多的企业级应用技术 两大核心:以 IOC(Inverse Of Control:控制反转)和 AOP(Aspect Oriented Programming:面向切面编程)为内核。

二 IOC Spring通过控制反转的技术促进了低耦合 控制:在java中指的是对象的控制权限(创建、销毁) 反转:指的是对象控制权由原来 由开发者在类中手动控制 反转到 由Spring容器控制 解耦合的原则是编译期不依赖,而运行期依赖就行了。

2.1自定义BeanFactory

注意:将创建对象交给spring不用new

**思路:使用反射创建类,但是又存在硬编码问题,使用配置文件解决,因此要使用dom4j加载解析xml,然后将其存入map中和类名映射,使用的时候通过类名就可以从map中获取对象。**最终目标:代码解耦合

newInstance()和new()区别:

1、两者创建对象的方式不同,前者是实用类的加载机制,后者则是直接创建一个类:

2、newInstance创建类是这个类必须已经加载过且已经连接,new创建类是则不需要这个类加载过

3、newInstance: 弱类型(GC是回收对象的限制条件很低,容易被回收)、低效率、只能调用无参构造,new 强类型(GC不会自动回收,只有所有的指向对象的引用被移除是才会被回收,若对象生命周期已经结束,但引用没有被移除,经常会出现内存溢出)

Spring_IOC(控制反转)剖析_spring

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年12月22日 0

暂无评论

推荐阅读
xG3Gf8m6XbKr