栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Spring之IOC

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring之IOC

kuangshen---Spring
  • 1.Spring是什么?
  • 2. Sping组成(七大功能模块作用)
  • 3. IOC理论推导
  • 4. 写一个业务如何实现?
  • 5. Spring:IOC本质分析探究(案例分析)
  • 6. Spring官网文档
  • 7. 依赖注入
  • 8. ApplicationContext.xml
  • 9.IOC创建对象的方式
  • 10.Spring配置(bean.xml ApplicationContext. xml)
  • 11.依赖注入各种类型-集合类:参考官网
  • 12.Bean作用域(面试:手写单例模式--弊端--好处)
  • 13.Bean的自动装配(3种装配方式)
  • 14.注解实现自动装配
  • 15. @Autowire与@Resource的区别

1.Spring是什么?

Spring是一个轻量级的控制反转IOC和面向切面编程AOP的框架。
链接: 69道Spring面试题和答案.
https://www.cnblogs.com/whtydn/p/5128097.html

2. Sping组成(七大功能模块作用) 3. IOC理论推导
  1. 写一个业务如何实现?
  2. 用户实际调用的是业务层,dao层他们不需要接触!
  3. 控制反转是一种设计思想,依赖注入是实现IOC的一种方法。
  4. Spring容器在初始化时先读取配置文件,根据配置文件创建的与组织的对象存入容器中,程序使用时再从IOC容器中取出需要的对象。
  5. 控制反转是一种通过描述(XML或者注解)并通过第三方去生产或获取特定对象的方式。在Spring中实现控制反转的是Ioc容器,其实现方法是依赖注入。
4. 写一个业务如何实现?
  1. UserDao接口
  2. UserDaoImpl 实现类
  3. UserService业务接口
  4. UserService业务实现类
5. Spring:IOC本质分析探究(案例分析)

链接: IOC本质分析探究1.
链接: IOC本质分析探究2.

6. Spring官网文档

链接: Spring官网文档.

7. 依赖注入

三种注入方式

  1. 接口注入
  2. Setter注入(重点)
  3. 构造器注入
8. ApplicationContext.xml

		

//ref :引用Spring容器中创建好的对象。
//value: 基本的数据类型 具体的值

id = 变量名
class = new的对象
propertry 相当于给对象中的属性设置一个值

9.IOC创建对象的方式

链接: 狂神博客–IOC创建对象的方式.

  1. 使用无参构造创建对象,默认!
  2. 假设使用有参构造函数3种—下标索引、参数类型匹配、直接通过参数名
10.Spring配置(bean.xml ApplicationContext. xml)

链接: 狂神博客–Spring配置.

11.依赖注入各种类型-集合类:参考官网

依赖:bean对象的创建依赖于容器
注入:bean对象中的所有属性由容器注入
p命名空间注入,可以直接注入属性的值:property
c命名空间注入,通过构造器注入

12.Bean作用域(面试:手写单例模式–弊端–好处)

scope = " singleton"

  1. singleton单例模式
  2. prototype原型模式
  3. request、session、application只能在web中开发使用到。
    request 在一次请求中之后失效
    session 这个对象一直在session活着
    application 全局活着

面试:手写单例模式—弊端–好处

13.Bean的自动装配(3种装配方式)

自动装配是Spring满足bean依赖的一种方式,Spring会在上下文中自动寻找,并自动给bean装配属性
在Spring中有三种装配方式

  1. 在xml中显示的配置
  2. 在java中显示配置
  3. 隐式的自动装配bean–重点: autowire = “byName” or “byType”
14.注解实现自动装配

使用注解须知:

  1. 导入约束: context约束
  2. 配置注解的支持 (重要)


    

链接: 官网的注解配置文件.

  1. @Autowire(required = false) 说明这个对象可以为null
  2. @Nullable 字段标记这个注解,说明这个字段可以为null.
  3. 如果@Autowire自动装配的环境比较复杂,自动装配无法通过一个注解(@Autowire)完成的时候,我们可以使用@Qualifier(value = “***”) 指定一个唯一的bean对象注入。
  4. @Resource 通过byName or byType 是java的注解。
  5. @Resource 也可以指定一个唯一的bean对象注入。
15. @Autowire与@Resource的区别
  1. 都是用来自动装配的,都可以放在属性字段上
  2. @Autowire 默认通过byType的方式实现
  3. @Resource 默认通过byname的方式实现,如果找不到,则通过byType实现,如果两个都找不到的情况下,则报错。
  4. 执行顺序不同:@Autowire 默认通过byType的方式实现,@Resource 默认通过byname的方式实现。
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/462652.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号