spring

一:spring概述

Spring是什么?
1.Spring是分层的Java SE/EE应用轻量级开源框架,以ioC (inversr of Control:反转控制)和AOP (Aspect Oriented Programming:面向切面编程)为核心。
2.提供了视图层SpringMVC和持久层Spring JDBCTemplate以及业务层事务管理等众多的企业级应用技术,还能整合开源世界众多著名的第三方框架和类库,逐渐成为使用最多的JavaEE企业应用开源框架
Spring的发展
创始人:Rod Johnson
Spring的优势
1.方便解耦,简化开发
2.AOP编程的支持
3.声明事务的支持
4.方便程序的测试
Spring的体系
Beans,core,Context,SpEll

二:使用 spring 的 IOC 解决程序耦合

控制反转IoC(Inversion of Control)
控制:控制的双方是什么?谁控制谁?
主控方:Spring、
被控方:应用程序所使用的资源
(原始)应用程序直接控制需要的外部资源
(Spring)Spring控制所需要的外部资源
反转:什么是反转?反转什么?
正向:应用程序直接调用资源
反向:应用程序依赖Spring为其提供资源
反转的是资源的控制权
应用程序由主动调用资源,变为被动的等待Spring提供资源
有什么好处?
正向缺点:应用程序控制的资源分布在程序的每一个地方
反向的优点:所有的资源都在Spring中,便于管理,降低了耦合度。
总结:Spring反向控制应用程序所需要使用的外部资源。资源受Spring管理,利用率最大化。

三:ApplicationContext的三个实现类

ClassPathXmlApplicationContext:
它是从类的根路径下加载配置文件 推荐使用这种
FileSystemXmlApplicationContext:
它是从磁盘路径上加载配置文件,配置文件可以在磁盘的任意位置。
AnnotationConfigApplicationContext:
当我们使用注解配置容器对象时,需要使用此类来创建 spring 容器。它用来读取注 解。
代码测试
ClassPathXmlApplicationContext源码下
在这里插入代码
ClassPathXmlApplicationContext application = new ClassPathXmlApplicationContext(“applicationContext.xml”);

FileSystemXmlApplicationContext
FileSystemXmlApplicationContext application = new FileSystemXmlApplicationContext(“A:\workspace\idea\spring\src\applicationCo ntext.xml”);

四:BeanFactory和ApplicationContext的区别

BeanFactory 才是Spring容器中的顶层接口。ApplicationContext 是它的子接口。 BeanFactory 和 ApplicationContext 的区别:
ApplicationContext:只要一读取配置文件,默认情况下就会创建对象。 BeanFactory:什么使用什么时候创建对象。
代码测试

BeanFactory application = new XmlBeanFactory(new ClassPathResource(“applicationContext.xml”)); IUserService userService = (IUserService) application.getBean(“userService”);

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值