`

Spring总结

阅读更多

一、spring实现的2种设计模式

工厂模式

单态模式

注:spring默认将所有的bean设置成单态模式,无须自己实现单态模式.spring工厂模式不仅提供了创建bean的功能,还提供对bean生命周期的管理。最重要的还管理bean与bean之间的依赖关系。

二、依赖注入(DI:Dependency Injection)

依赖注入通常有2种

设值注入(通过setter方法)

<property name="axe">

<ref local="stoneAxe">

</property>

构造注入(通过构造函数)

<constructor-arg>

<ref bean="stealAxe">

</constructor-arg>

 

区别

设置值注入是先创建一个默认的bean实例,然后调用对应的setter方法注入依赖关系。

构造注入则是在创建实例时,已经完成了依赖关系的注入。

 

spring有2个接口

BeanFacory和ApplicationContext(是BeanFactory的子接口,也称spring上下文)

BeanFactory接口基本方法

containsBean(String name)

getBean(String name)

getBean(String name,Class type)

getType(String name)

通常实现类是XmlBeanFactory

访问如下:

InputStream is=new FileInputStream("beans.xml");

InputStreamResource isr=new InputStreamResource(is);

XmlBeanFactory factory=new XmlBeanFactory(isr);

ClassPathResource res=new ClassPathResource("beans.xml");

XmlBeanFactory factory=new XmlBeanFactory(res);

通常放在class目录下

 

ApplicationContext常用的实现类如下

FileSystemXmlApplicationContext(以指定路径的xml配置文件创建ApplicationContext)

ClassPathXmlApplicationContext(以ClassPath路径下的xml配置文件创建ApplicationContext)

注意:也可以将xml配置文件名称或路径作为String数组传递给以上2个类的构造函数来创建ApplicationContext。

 

 

bean的基本定义

id:唯一的标识符

class:指定bean的具体实现类,这里不能是接口。

注:bean的行为方式有singleton和non-singleton或原型

 

创建bean

1.调用构造器创建一个bean实例

步骤:创建BeanFactory实例、创建默认实例、根据配置文件注入依赖关系,先实例化bean,然后将依赖bean注入、返回一个完整的JavaBean实例。

2.BeanFactory调用某个类的静态工厂方法创建bean

注意:class属性不再是bean的实现类,而是静态工厂类、必须使用factory-method属性确定产生实例的静态工厂方法、如果静态工厂方法需要参数,则使用<constructor-arg>元素确定静态工厂方法。

3.BeanFactory调用实例工厂方法创建bean

实例工厂方法必须提供工厂实例,因此必须在配置文件中配置工厂实例,而bean元素无需class属性。因为BeanFactory不再直接实例化该bean,仅仅是执行工厂的方法,负责生成bean实例。
factory-bean和factory-method

 

 

配置依赖

bean的依赖通常如下

value

ref(local和bean)

bean

list、set、map以及props

 

注入属性值

PropertyPathFactoryBean

有2个属性targetBeanName和propertyPath

 

注入field值

FieldRetrievingFactoryBean

 

注入方法返回值

MethodInvokingFactoryBean

有如下几个属性

实例

targtObject、targetMethod

静态

targetClass、targetMethod

 

 

强制初始化bean使用depends-on

 

自动装配,设置autowire的值

no、byName、byType、constructor、autodetect

 

依赖检查

dependency-check="all"和dependency-check="objects"

 

bean生命周期

定制bean的生命周期行为

 

依赖关系注入之后的行为:

有2种方式:设置init-method属性和实现InitializingBean接口

bean销毁之前的行为

有2种方式:设置destroy-bean属性和实现DisposableBean接口

 

 

 

 

 

 

分享到:
评论

相关推荐

    Spring总结和复习

    Spring总结

    Spring总结.xmind

    包含Spring简介,AOP,SpringMVC,集成JDBC,事务,ORM框架,Spring集成知识点总结,以思维导图的形式展示,xmind文件。

    spring总结

    标题中的“spring总结”指的是对Spring框架的全面回顾和总结,Spring是Java开发中最广泛应用的轻量级框架,尤其在企业级应用开发中占据主导地位。这篇总结可能涵盖了Spring的核心特性、工作原理以及最佳实践。 描述...

    Spring总结(四)

    Spring个人总结,基于Annotation注解的方式开发,配置

    spring总结1可以查看

    spring总结1可以查看

    spring 总结md文档

    spring入门笔记

    【狂神说】spring 总结源码 下载

    在这个“狂神说”系列的Spring源码总结中,我们可以深入理解Spring的核心概念和实现机制。 1. **依赖注入(DI)与控制反转(IoC)**:Spring的核心特性是依赖注入,它通过反转应用程序对对象的控制权,使得对象的创建和...

    达内培训内部资料--spring总结精华版

    【总结】 Spring 框架是一个全方位的解决方案,它不仅提供了一种管理对象生命周期和依赖关系的有效方式,还简化了事务处理、持久层操作和Web应用的开发。通过使用Spring,开发者可以构建出更加模块化、易于测试和...

    Spring总结——田超凡.docx

    【Spring 框架概述】 Spring 是一个广泛应用于企业级 Java 开发的开源框架,由 Rod Johnson 创建,旨在简化 Java EE 应用的复杂性。它以轻量级、低侵入式的设计理念,提供了全面的解决方案,涵盖从表现层到业务逻辑...

    spring总结.xmind 思维导图

    Spring5思维导图

    Spring总结——Spring容器、Spring中的IoC

    文章目录Spring总结Spring容器控制反转(IoC)基于XML的IoC Spring总结 Spring容器 什么是Spring容器 从概念上讲:Spring 容器是 Spring框架的核心,是用来管理对象的。容器将创建对象,把它们连接在一起,配置它们...

    ssm之spring总结和整理 java框架

    spring方面介绍 常用注解 生命周期 AOP DI

    spring总结笔记

    ### Spring框架概述与基本配置 #### 一、Spring框架简介 Spring框架是一个开源的企业级Java应用框架,由Rod Johnson创建并由Pivotal Software提供支持。Spring提供了全面的基础架构支持,使得开发者能够专注于应用...

    Spring思维导图

    Spring框架是Java开发中最广泛应用的轻量级框架之一,它以其IoC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向切面编程)为核心特性,极大地简化了企业级应用的开发。这份"Spring思维...

Global site tag (gtag.js) - Google Analytics