Spring IOC 控制反转

Spring框架一共分为两个大块,一个是IOC控制反转,一个是AOP面向切面
这篇文章是一个Spring的IOC的一个简单的计算机属性案例
首先在见一个spring的配置文件
名字可以随便写
这里写图片描述
配置文件的一些基本配置我用图解写出来了
上面有最基本的一些类的配置
这里写图片描述
然后是我的实体类
简单说下结构
首先有一个computer计算机类,有三个属性,CPU,硬盘,内存条,每个属性都是一个接口,每个接口都有2个实现类,例如实现CPU接口的类里面写一个方法,返回一个String类型的CPU品牌名称,这里就是一个Intel和AMD两个类,分别返回字符串“Intel”和“AMD”硬盘和内存条都是这样的结构,有图参考
这里写图片描述
然后就是怎么用Java代码加载配置问件的类了,有两种方法,一个是懒加载,一个是即时加载,懒加载是指只有在用到这个实体类的时候才会去创建这个类,即时加载就是在你启动程序的时候就把你配置在spring的所有类都加载出来,这样第一个运行程序就会慢很多,懒加载则是启动快,启动之后的使用没有即时加载那么快
这个是懒加载的调用方法

        //读取Spring配置文件
        //延迟加载
        BeanFactory bf=new XmlBeanFactory(new ClassPathResource("applicationContext.xml"));
        Computer computer=(Computer) bf.getBean("computer");

即时加载

ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml");
        Computer computer=(Computer) ac.getBean("computer");

这样拿类虽然比我们用代码直接new一个类复杂了一些,但是这种方法不管你拿同一个类多少次这个类在内存中的地址始终只有一个,直接new一个的话你创建一个他在内存中就多一个,当你的用户量庞大的时候就会造成内存的问题 上面配置文件还有一些没有提到的这里我就给两张属性图这里写图片描述

—–这里写图片描述——

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AprilCos

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值