SPRING入门到精通
1.简介
2.优点
(1)免费开源的框架
(2)轻量级的、非入侵式的框架
(3)控制反转IOC、面向切面编程AOP
(4)支持事务的处理、对框架整合支持
总结一句话:Spring就是一个轻量级的控制反转(IOC)和面向切面编程(AOP)的框架。
3.组成
spring的七大模块
4.SpringBoot
- 一个快速开发的脚手架
- 基于Springboot可以快速的开发单个微服务
- 约定大于配置
学习springboot的前提是完全掌握spring和springmvc。
5.Spring cloud
- 基于springboot实现。
6.spring的弊端
随着发展,进入配置地狱模式。
7.IOC理论
程序员不用管理对象的创建,只去关心业务。这就叫IOC控制反转。
8.Spring配置
- import 导入其他的xml文件,适用于团队开发。
9.依赖注入
9.1 set方式注入
- 依赖:bean对象的创建依赖于容器
9.2 构造器注入
9.3 p命名空间 c命名空间
c命名空间:通过构造器注入
p命名空间:通过属性注入
需要导入xml约束,请查看spring官网
10. bean作用域
singleton:单例模式(手写单例模式)
<bean id="user" class="com.chi.pojo.user" c:age="18" c:name="炽" scope="singleton"/>
prototype:原型模式,每次从容器get时,都会产生新的对象。
<bean id="user" class="com.chi.pojo.user" c:age="18" c:name="炽" scope="prototype"/>
下面是web开发应用
request:一次请求。
session:session有效期
application:全局都存活着。
websocket:
11.bean的自动装配
自动装配是spring满足bean依赖的一种方式!
spring会在上下文中自动寻找,并自动给bean装配属性!
spring中3种装配方式
1.xml显示的配置
2.java中显示配置
3.隐式的自动装配bean【重要】
autowire=“byName” 需要名字对应
byName:会自动在容器上下文中查找,和自己对象set方法后面的值对应的beanid
autowire=“byType” 需要类型对象唯一
byName:会自动在容器上下文中查找,和自己对象set方法后面的类型对应的beanid
11.1 使用注解实现自动装配
jdk 1.5开始支持 sping 2.5开始支持注解
要使用注解须知:
1.导入约束
2.配置注解的支持 context:annotation-config/