Spring的认识,以及快速入门案例---3

spring开发提倡接口变成,配合di技术可以解决层与层之间的解耦

体验一下spring的di配合接口编程,完成一个字母大小写的转换。

思路:1.创建一个接口ChangeLetter

           2.两个类实现接口 UpperLetter,LowwerLetter

           3.把对象配置到Spring容器中

 两个bean标签的id一样,但是class一个是UpperLetter另一个是LowwerLetter。相当于 ChangeLetter changeLetter = new UpperLetter();用接口ChangeLetter去接收

通过上面的案例,我们可以初步体会到di配合接口编程,的确可以减少Web层和业务成的耦合度

 

二:装配Bean

bean工厂介绍:

  工厂设计模式,创建分发各种bean。配置好他们之间的写作关系,参与bean的生命周期。BeanFactory factory = new XMLBeanFactory(new ClassPathResource("applicationContext.xml"));bean工厂只把bean的定义信息载进来,用到的时候才实例化,factory.getBean("mybean");就可以得到一个bean。

  从Applicationcontext应用上下文中获取bean和从bean工厂容器中获取bean

    如果使用applicationcontext,则配置的bean如果是singlton不管你用不用,都被实例化(好处就是可以预先加载,缺点就是耗内存),如果使用了beanfactory,则当你实例化该对象时候,配置的bean不会被马上实例化,当你使用的时候,才被实例化(好处就是节约内存,缺点就是速度比较慢)

   一般没有特殊要求,应当使用ApplicationContext去获取。

  bean的scope的细节

    singlton 在每个Spring Ioc 容器中一个bean定义对应一个对象的实例 scope=singlton

    prototype 一个bean定义对应多个对象实例。scope=prototype

  还有三个配置,request,session,global-session是在web开发中才有意义

三种获取ApplicationContext对象引用的方法

  1.ClassPathXmlApplicationContext --->通过类路径

  2.FileSystemXMLApplicationContext--->通过文件路径

  3.XmlWebApplicationContext

 

 

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值