spring框架运行流程(spring生命周期七个过程是什么)

本文目录
spring生命周期七个过程是什么
spring生命周期只有3个:
1、Spring对Bean进行实例化(相当于程序中的new Xx())。
2、Spring将值和Bean的引用注入进Bean对应的属性中。
3、如果Bean实现了BeanFactoryAware接口,Spring将调用setBeanDactory(BeanFactory bf)方法并把BeanFactory容器实例作为参数传入。
在spring2.0之前bean只有2种作用域即:singleton(单例)、non-singleton(也称prototype),Spring2.0以后,增加了session、request、global session三种专用于Web应用程序上下文的Bean。因此,默认情况下Spring2.0现在有五种类型的Bean。
Spring框架是一个开放源代码的J2EE应用程序框架,由Rod Johnson发起,是针对bean的生命周期进行管理的轻量级容器(lightweight container)。 Spring解决了开发者在J2EE开发中遇到的许多常见的问题,提供了功能强大IOC、AOP及Web MVC等功能。
javaEE项目启动过程中Spring是怎么一步步执行的
你这个问题问的不清楚,如果是和其他框架整合,运行过程如下。Spring+struts
1,tomcat启动,创建容器。web.xml是服务器最先调用的文件。
2,然后加载WEB-INF下的web.xml初始化里面内容,
3,spring配置文件初始化,主要是ioc反转控制,和aop切面。spring注入是面向接口编程。
3,因为web.xml初始化了,说明struts过滤器也被创建,下面就可以拦截请求了。
4,页面请求发出,被status拦截送到action,action里面有spring注入接口。可以直接调用方法不需要new 对象。再然后就是业务处理。
下面这是个springMVC单独使用。不用注解的情况下。
与servlet处理请求方式差不多,
java 请问下SpringMVC中Spring的主要工作原理是什么是怎么工作的工作流程
一、 IoC(Inversion of control): 控制反转
1、IoC:
概念:控制权由对象本身转向容器;由容器根据配置文件去创建实例并创建各个实例之间的依赖关系
核心:bean工厂;在Spring中,bean工厂创建的各个实例称作bean
二、AOP(Aspect-Oriented Programming): 面向方面编程
1、 代理的两种方式:
静态代理:
针对每个具体类分别编写代理类;
针对一个接口编写一个代理类;
动态代理:
针对一个方面编写一个InvocationHandler,然后借用JDK反射包中的Proxy类为各种接口动态生成相应的代理类
2、 AOP的主要原理:动态代理
Spring工作原理
Spring 已经用过一段时间了,感觉Spring是个很不错的框架。内部最核心的就是IOC了,
动态注入,让一个对象的创建不用new了,可以自动的生产,这其实就是利用java里的反射
反射其实就是在运行时动态的去创建、调用对象,Spring就是在运行时,跟xml Spring的配置
文件来动态的创建对象,和调用对象里的方法的 。
Spring还有一个核心就是AOP这个就是面向切面编程,可以为某一类对象 进行监督和控制(也就是
在调用这类对象的具体方法的前后去调用你指定的 模块)从而达到对一个模块扩充的功能。这些都是通过
配置类达到的。
Spring目的:就是让对象与对象(模块与模块)之间的关系没有通过代码来关联,都是通过配置类说明
管理的(Spring根据这些配置 内部通过反射去动态的组装对象)
要记住:Spring是一个容器,凡是在容器里的对象才会有Spring所提供的这些服务和功能。
Spring里用的最经典的一个设计模式就是:模板方法模式。(这里我都不介绍了,是一个很常用的设计模式)
Spring里的配置是很多的,很难都记住,但是Spring里的精华也无非就是以上的两点,把以上两点跟理解了
也就基本上掌握了Spring.

本文相关文章:
springbatch写数据库(springbatch 会自动保存修改的数据库对象么)
2026年10月3日 03:20
springboot activiti(springboot+Vue+Activiti7新增流程节点控制表单编辑/隐藏属性)
2026年6月28日 13:30
更多文章:
activex控件未注册怎么办(登陆视频监控网页时提示activex控件未注册,怎么解决)
2026年10月14日 20:30
excel连接sql数据库教程(excel怎么连接sql数据库)
2026年10月14日 19:40
stm32 float占几个字节(c语言中, float类型的数据范围是多少)
2026年10月14日 17:30
scanf输入多个数据用空格隔开吗(C语言输入两个数之间是用空格隔开还是用逗号)
2026年10月14日 17:20
汇编语言期末试卷(一道汇编语言编程题!急求大神解答明天期末考试就要考了务必按照试卷上的要求来回答好的话有Q币)
2026年10月14日 16:30
汇编语言pdf下载(《Windows环境下32位汇编语言程序设计》资料下载)
2026年10月14日 13:40



