Spring
1.Spring出现的背景。
为了各个框架之间的整合与统筹。javaee架构级别的框架它通过IoC(控制反转)和AOP(面向切面)编程的两项技术,将其他框架、组件以及资源低耦合的整合在一起减少了框架,类之间的依赖性。
2.Spring是一个开源框架,可以二次开发,是一个轻量级的IOC和AOP容器框架。
轻量级:从大小和系统开支上说Spring框架都可以说是轻量级的,整个Spring可以打包成几M的jar文件,利用Spring开发不依赖任何服务器,也无需引入api(非侵入式特性)。
反向控制:Spring通过反向控制(ioc)来实现组件之间的松散耦合。
AOP:面向切面:把方法中完成相同功能的的代码所对应的功能全部抽取出来,在需要的时候把功能注射到方法中。
容器:管理着很多对象的生命周期和配置。
spring框架的模块:
核心容器:为Spring框架提供了一些基础的功能。beanfactory对象工厂。是所有基于Spring框系统的核心。
ApplicationContext(上下文)模块:对beanfactory的一个扩展提供了很多企业级的服务,提供了很多WEB方面的服务。是beanfactory的扩展。
AOP模块:提供了很多面向切面的模块支持。
也存在继承jdbc,or映射等功能
3.spring的优势:
相比于EJB(为一个java对象提供所有服务,不管对象需不需要)spring(只为对象提供需要的服务)
降低组件之间的耦合度,通过控制反转(ioc)
使用Spring可以避免代码的重复。
可以控制复杂的事务传播行为。
提供了集成其他框架的方式是一个管理其他框架的框架。
4.ioc 控制反转
由对象(应用程序)自身创建自己的关联或者依赖对象(new service)之类的,改变为由外部容器将关联或依赖对象注入。应用程序本身不负责对象的创建和维护,而是有外部容器来创建需要的对象。降低了组件间的耦合
。
5.DI 依赖注入:
控制反转就是通过依赖注入实现的。
创建对象后告诉应用程序的过程叫做依赖注入。
依赖注入有两种方法:setter注入和构造器注入
。
6.bean 在spring容器管理下的所有功能组件都称为Bean
7.Spring的两种不同的容器。
beanfactory:产生bean对象
applicationcontext:是beanfactory的拓展。功能得到了增强
8.搭建开发环境:
(1.导入jar包,
(2.在src目录下new一个xml
配置配置文件:
1.在帮助文档中copy头部文件(不联网无法获得代码提示处理方法: 手动导入文档,然后手动配置)
2.配置:<bean id="us" class="创建类对象的完整路径" scope="prototype(原型模式)"(默认单例模式)></bean>
3.使用ApplicationContext con=new classpathapplicationcontext("刚刚创建的xml文件的路径")
用 con.getBean("us",类.class)创建
对象默认情况下在容器启动的时候创建对象,单例模式下,只创建一个对象,也可以通过lazy_init(true) 让容器在需要的时候创建对象。
4.通过 property 给对象赋属性。<property ref="赋给对象的值"></property>
浙公网安备 33010602011771号