极客学院的视频超好.
1.spring框架的作用:降低企业应用开发复杂性
传统开发模式:
spring的开发模式:
2.spring降低程序复杂性的方法:降低类之间的耦合性
ioc容器就像一个中介一样,ioc统一创建类的实例化对象,需要用到的时候,直接向ioc调用即可.
3.spring是一个轻量级控制反转(ioc)和面向切面(aop)的容器框架
4.ioc是spring的核心,ioc对于spring来说,就是由spring来负责控制对象生命周期和对象间的关系
传统开发模式:对象之间互相依赖,比如你在开发一个界面,你需要用到文本框对象,那么你需要new一个文本框对象,或者从jndi中查询一个,使用完对象后还要销毁
进入ioc模式之后,对象之间的依赖关系由ioc来管理,ioc实现的原理有点像中介,你只需要告诉ioc我需要一个什么样的对象,那么ioc就给你一个什么样的对象,如果给的对象不符合要求,那么就抛异常
以前是被调用的对象由调用对象来控制它的生命周期,现在所有对象都由ioc来控制,这就叫控制反转
依赖注入和控制反转是从不同角度描述同一件事情,依赖注入就是在类的运行期间,将类需要的某种依赖关系动态的注入到类中
依赖注入这种原理,不仅仅可以用在软件行业,也可以用在日常生活中
5.aop
aop的基本概念: 面向切面的编程,新颖的设计思想
aop与oop的关系:aop是对oop面向编程的一种补充,oop是从静态角度考虑程序 aop是从动态角度考虑程序运行过程
aop主要功能:主要是系统级别的功能,比如日志处理,异常处理,事务处理
aop主要意图:将日志,事务,安全控制,支持等东西与具体的业务逻辑分离出来
举例: 一个大型的应用系统,很多模块,
每个模块都负责一个核心业务,每个模块又都需要日志组件,异常管理组件的支持。而且业务模块插入了与业务自身无关的组件,很麻烦,因此aop目的是将这些需要公用的组件分离出去
实现原理:aop代理目标对象的全部方法,然后对其增强. 一般业务组件只要找好切入点,然后调用aop代理就行了
6.注入方法有3种
构造函数注入
属性注入
接口注入
7.spring通过xml配置文件,来描述类与类之间的依赖关系,然后自动完成类的初始化和销毁
spring的ioc原理就是利用反射机制实现的
8.JDK并不能很好的访问底层资源,所以spring设计了一个Resource接口,它为应用提供了更强大的访问底层资源的能力
9.BeanFactory是spring框架最核心的接口,它提供高级ioc的配置机制,ApplicationContext建立在BeanFactory基础之上,提供了更多面向应用的功能,它提供了国际化支持和框架事件体系
10.spring配置文件就是指导spring工厂进行bean的生产,依赖关系注入以及bean实例分发的"图纸",它是一个或者多个的xml文档
11.启动spring基本条件
11.1spring的框架包
11.2bean的配置信息
11.3bean的实现类
12.spring理解了,就是spring 里面有个beanFactory(专门用来创建类的实例,然后放到bean缓存池里面),创建了类之后,程序需要的话就向bean缓存池要
比如要用Hello这个类,就用BeanFactory beanFactory=new ClassPathXmlApplicationContext("xxxx")
Hello a=beanFactory.getBean("xxx") (不同配置,有不同获取方法)
13.bean id的命名方式 作用:你要从beanFactory中注入要用到的类,那么你必须有一个东西唯一标识它,不然你怎么找到它呢?
所以配置文件就是干的这个工作,用一个东西唯一标识它
14.spring如何实例化bean?(简单) (意思就是你如何让spring 帮你产生类的实例化对象
利用反射机制实例化bean
构造器实例化bean是最简单的方式
静态工厂
实例工厂
3种方式配置不一样,但是使用他们的方法是一样的
15.scope
在面向对象的编程中指变量的作用范围,在spring中指的是一个bean对象对其他bean对象的请求可见范围
bean的5种预定义作用域,以及如何在spring中自定义作用域
singleton:请求都只会返回唯一的bean,传统的模式,要为每一个单独实例编写代码,spring以容器的功能直接提供单实例,很方便
应用:应为spring有面向切向的特点,所以DAO这些类都可以做成单实例模式
spring因为localThread和面向切向,使得非线程安全的类可以变成线程安全的类
spring默认作用域是singleton,因为spring的强大功能,好多类都可以做成线程安全的类,所以大部分作用域都是singleton
prototype:每次请求都创建一个新的bean对象,所以spring初始化是不会实例化prototype这种bean的
request跟http请求对应,http中的request没了,作用域为request的bean也会被销毁
session 跟http请求对应,http中的session没了,作用域为session的bean也会被销毁
16.spring 配置文件的管理
在大型项目中,spring的配置文件都是分开管理的,然后再通过一个xml文件整合所有的其他xml配置文件
举例
Spring-All-Module.xml
<beans>
<import resource="common/Spring-Common">
<import resource=...>
<import resource=...>
<beans>
整合后的加载方式
Application context=new ClassPathXmlApplicationContext("Spring-All-Module.xml");
17.用通俗的话来说spring的一般原理如下:
17.1先在xml中配置好需要用到的类
17.2启动spring,spring在beanFactory中创建类的对象,相当于我们new 了一个对象
17.3要用到对象的时候就向beanFactory要,步骤如下
先new一个BeanFactory
BeanFactory beanFactory = new ClassPathXmlApplicationContext("conf/conf-scope.xml");
然后我要Boss类的一个对象,直接向beanFactory要
Boss boss1 = beanFactory.getBean("boss1", Boss.class);
相关推荐
这本书籍“一本很不错的关于spring入门的书籍”显然是针对初学者设计的,旨在帮助新手快速掌握Spring的基本概念和核心功能。 Spring框架的核心特性包括: 1. **依赖注入(Dependency Injection,简称DI)**:这是...
《Spring入门代码项目详解》 在IT行业中,Spring框架无疑是最受欢迎的Java企业级应用开发框架之一。本项目旨在帮助初学者快速入门Spring,通过实际的代码操作来理解和掌握Spring的核心概念与用法。以下是对每个子...
spring入门经典+源代码.Spring入门经典 一书全面透彻地介绍Spring Framework;Spring Framework是Java开发领域最流行的框架,是事实上的企业级应用开发标准。本书浓墨重彩地描述实际的企业级解决方案,每一章都提供了...
Spring框架是Java开发中...本教程的文档《Spring入门教程.doc》将深入讲解这些概念,并提供实例代码和步骤说明,帮助你从零开始学习Spring,逐步成长为一名熟练的Spring开发者。请打开文档,开始你的Spring学习之旅吧!
### Spring入门书籍知识点总结 #### 一、Spring框架概述 **Spring** 是一个开源的Java应用框架,旨在简化企业级应用程序开发。它提供了一个全面的编程模型,支持从Web层到业务逻辑层的各种应用场景。 #### 二、...
《Spring入门经典》是一本由Mert Caliskan和Kenan Sevindik共同撰写的书籍,主要面向希望深入理解并掌握Spring框架的初学者。Spring是Java领域中最为广泛使用的开源框架,它提供了一个全面的编程和配置模型,旨在...
本资源"Spring入门经典源代码"旨在帮助初学者快速理解并掌握Spring框架的核心概念和使用方法。这本书籍结合了丰富的示例代码,使得理论与实践相结合,使学习过程更加直观和高效。 1. **Spring概述** Spring是一个...
Spring框架是中国Java开发领域中最广泛使用的轻量级框架之一,它以其依赖注入...这份"spring入门介绍PPT"将是你深入理解Spring的宝贵资源,通过它,你可以逐步掌握Spring的核心理念和技术,开启你的Spring开发之旅。
《Spring入门经典》是一本专为初学者和有一定基础的开发者设计的教程,它通过附带的源代码帮助读者深入理解并快速掌握Spring框架。Spring是Java开发领域中最为广泛应用的轻量级框架,它的核心特性包括依赖注入、面向...
spring入门相关jar包,相关jar包为: commons-logging-1.2.jar spring-beans-5.2.6.RELEASE.jar spring-context-5.2.6.RELEASE.jar spring-core-5.2.6.RELEASE.jar spring-expression-5.2.6.RELEASE.jar
《Spring入门经典》第二章主要围绕Spring Framework的基础知识展开,旨在为初学者提供一个全面而深入的Spring学习路径。Spring Framework作为Java开发的核心框架,它以其模块化、易用性和强大的功能深受开发者喜爱,...
Spring入门教学(解决方案)Spring入门教学(解决方案)Spring入门教学(解决方案)Spring入门教学(解决方案)Spring入门教学(解决方案)Spring入门教学(解决方案)Spring入门教学(解决方案)Spring入门教学(解决方案)Spring...
《Spring入门经典》是一本深度剖析Spring框架的入门书籍,旨在帮助初学者快速掌握Spring的核心概念和使用方法。书中的示例代码是理论知识的实践体现,通过这些代码,读者可以直观地理解Spring如何工作,如何配置,...
Spring入门级教程,从零开始教你认识Spring,了解Spring,理解Spring的两大核心IoC和AOP,教你如何使用Spring进行开发
Spring入门,关于Spring的详细解释以及spring的工作原理!
Spring入门经典 一书全面透彻地介绍Spring Framework;Spring Framework是Java开发领域最流行的框架,是事实上的企业级应用开发标准。本书浓墨重彩地描述实际的企业级解决方案,每一章都提供了通俗易懂的示例和动手...
《Spring入门书籍》是一本专为初学者设计的Spring框架学习指南。这本书旨在帮助读者从零开始,逐步掌握Spring框架的基础知识和核心概念,从而在实际项目开发中得心应手。Spring作为Java企业级应用的主流框架,其强大...
《Spring入门基础详解》 Spring框架作为Java领域中极为重要的轻量级容器,以其强大的功能和易用性深受开发者喜爱。本教程将带你逐步走进Spring的世界,了解其核心概念,并教你如何在Eclipse环境中搭建Spring开发...
首先,我们来解析一下标题"Spring入门案例"。这表明我们将学习的是Spring的基本概念和基础应用,包括如何搭建Spring项目环境,配置Spring容器,以及如何使用Spring管理Bean。Spring框架的核心是IoC(Inversion of ...
### Spring入门教程详解 #### 一、Spring框架概述 Spring框架是由Rod Johnson创建的一个开源框架,旨在简化企业级Java应用程序的开发。它提供了一种优雅的方式来处理依赖管理和控制反转(Inversion of Control, ...