spring01

作者: WJ_a4e6 | 来源:发表于2018-12-17 14:07 被阅读0次

框架特点

1.专业的人员编写好的程序,一般是实现了某种设计思想. 2.框架经过大量项目实践,之后才推出(Apache) 3.学习者:先了解框架结构、学习使用、

最后再去了解底层原理

Spring框架

Spring框架主要功能

1. Spring IOC容器(核心)

2. Spring DAO应用

3. Spring Web MVC应用

4. Spring ORM应用

5. Spring AOP应用

SpringWebMVC+SpringIOC+MyBatis(SSM)

Struts+Spring+Hibernate(SSH)

Spring IOC容器

1. IOC概念 Inversion of Control 控制反转/反向控制

//组件耦合度太高,替换DeptDao需要修改DeptServlet

DeptServlet-------------->DeptDao

new DeptDao();

//初始化

使用DeptDao.findAll

//释放对象资源

Spring提供了一个IOC容器,容器能够创建管理组件对象,并且能将对象给其他组件对象注入。

2. IOC容器优点

可以降低组件之间的耦合度,提升程序扩展性和移植性。

Spring IOC容器的使用

IOC容器对组件对象的管理

1. 创建容器对象

List list = new ArrayList();//创建集合对象

list.add(person);//放入元素

list.get(1)//获取元素

//创建容器对象

ApplicationContext ac = new ClassPathXmlApplicationContext(xml);

向xml文件中追加组件定义;//放入组件元素

ac.getBean("id");//获取组件对象

2. IOC容器使用过程

3. 对象创建

*方案1:new 构造器()

<bean id="" class="">

方案2:类.静态方法

<bean id="" class="" factory-method="">

方案3:对象.方法

<bean id="" factory-bean="" factory-method="">

1. 对象特性

scope单例/非单例 *

默认情况下,IOC容器采用单例模式创建组件对象。(一个bean组件只有一个对象) 如果需要改变成非单例,可以在追加scope="prototype",默

认是singleton

init-method对象初始化

在< bean>元素中使用init-method属性指定一个初始化方法,当bean对象创建后会自动调用init-method指定方法执行初始化逻辑.

destroy-method释放对象

在< bean>元素中使用destroy-method属性指定一个销毁方法,该方法需要满足以下条件

a.组件scope=singleton

b.触发容器对象的close方法(AbstractApplicationContext)

lazy-init对象创建时机

a.scope=singleton模式,对象创建是在ApplicationContext容器创建时创建。

通过lazy-init="true"属性可以将对象创建推迟到getBean方法调用时。

b.scope=prototype模式,对象创建是在ac.getBean("id")时创建。

IOC容器实现对象关系注入

DI概念:Dependecy Injection 依赖注入。

依赖注入可以分为set方法注入、构造器注入。最常用的是set注入。

1. set注入

组件中必须有setXxx方法,使用该方法接收配置中指定的值。

<bean id="ds" class="com.xdl.bean.MyDataSource">

<property name="username" value="scott">

</property>

<property name="xxx" value="xxx">

</property>

</bean>

2. 构造器注入

<bean id="ds" class="com.xdl.bean.MyDataSource">

<constructor-arg index="0" value="tiger">

</constructor-arg>

<constructor-arg index="1" value="tiger">

</constructor-arg>

</bean>

IOC综合案例(尝试理解,后续还会继续讲解)

相关文章

  • Spring01

    通过配置applicationContext.xml文件来获取类对象以及参数 实例: 步骤1:在com.hello...

  • spring01

    public class JdbcDemo1{ publicstaticvoidmain(String[] arg...

  • spring01

    框架特点 1.专业的人员编写好的程序,一般是实现了某种设计思想. 2.框架经过大量项目实践,之后才推出(Apach...

  • 框架--------Spring01

    框架--------Spring Spirng的整理,资源来自自己整理和互联网大神发帖 认识Spring之前,其实...

  • Spring01——SpringIoC容器

    一、spring概述 spring出现于2004年,其最早是由澳大利亚的音乐专家所提倡的,主要是由于EJB时代,E...

  • Spring01——你应该了解的,有关 IOC 容器的一切

    从本文开始,将开始介绍关于 Spring 的一些常见知识点。关注我的公众号「Java面典」,每天 10:24 和你...

网友评论

      本文标题:spring01

      本文链接:https://www.haomeiwen.com/subject/prnqkqtx.html