一.spring

1.spring介绍

spring负责管理项目中的所有对象,看作是项目中对象的管家.

spring一站式框架:

  • spring框架性质是属于容器性质的
  • 容器中装什么对象就有什么功能,所以可以一站式
  • 不仅不排斥其它框架,还能帮其它框架管理对象
  • ioc思想
  • aop支持
  • aop事务
  • junit测试支持

2.spring导包

  • 4个核心包(beans,core,context,spEL)
  • 2个aop包(aop,aspects)
  • 2个日志包(log4j)
  • 2个依赖包(aop联盟,weaving织入)
  • 1个web包(web)

3.spring概念

  1. ioc: inverse or control 控制反转
  • 对象的创建及依赖关系可以由spring完成创建以及注入
  • 控制反转就是反转了对象的创建方式,从自己创建反转给了程序(spring)
  1. di: dependency injection 依赖注入

    实现ioc思想需要di做支持

    注入方式:

    • set方法注入
    • 构造方法注入

    注入类型:

    • 值类型注入 8大基本数据类型
    • 引用类型注入 将依赖对象注入
  2. BeanFactory接口

    • spring原始接口.针对原始接口的实现类功能较为单一
    • BeanFactory接口实现类的容器.特点是每次在获得对象时才会创建对象
  3. ApplicationContext

    • 每次容器启动时就会创建容器中配置的所有对象.并提供更多功能
    • 从类路径下加载配置文件:ClassPathXmlApplicationContext

    结论:web开发中,使用applicationContext. 在资源匮乏的环境可以使用BeanFactory.

4.spring配置详解

  1. bean元素

    id: 给Bean起个名字 不能重复,不能使用特殊字符.早期属性.

    name: 给Bean起个名字 能重复,能使用特殊字符.后来属性.

    class: 类的完整类名

  2. 生命周期属性

    init-method 指出初始化方法

    destory-method 指出销毁方法

    作用范围scope:

    • singleton(默认值):单例.创建容器时会立即创建单例对象
    • prototype :多例.每次获得对象时,才会创建对象,并且每次都会创建新的对象.分模块开发

5.bean的创建方式

  • 空参构造创建
  • 静态工厂
  • 实例工厂

6.注入方式

  • set方法
  • 构造方法

7.复杂属性注入

  • Array
  • List
  • Map
  • Properties

一:SpringIOC&DI的更多相关文章

  1. Spring------IOC&DI

    一.Spring? Spring兴起:2003年,由Rod Johnson创建.总的来说,Spring Framwork从它诞生至今都一直为人所称道,它的伟大之处自此可见一斑. 核心:IOC& ...

  2. SpringIOC/DI(2)

    2019-03-08/09:24:37 开发环境:IDEA 1.创建Spring项目 File--New--project--Spring--Creat empty Spring-config.xml ...

  3. JavaWeb_(Spring框架)Spring中IoC与DI概念入门

    Spring是于2003 年兴起的一个轻量级的Java 开源框架,它由Rod Johnson创建.传统J2EE应用的开发效率低,Spring作为开源的中间件,提供J2EE应用的各层的解决方案,Spri ...

  4. Spring注解AOP及单元测试junit(6)

    2019-03-10/20:19:56 演示:将xml配置方式改为注解方式 静态以及动态代理推荐博客:https://blog.csdn.net/javazejian/article/details/ ...

  5. Spring知识点总结(四)之SpringAOP基础 - 代理设计模式

        1. 分析程序中存在的问题(高内聚,低耦合)        通过springIOC DI) 以及注解的使用,成功解决了在程序中层与层之间出现的耦合的问题,但是在很多地方仍然存在非该层应该实现的 ...

  6. Spring学习记录(一)

    1.Spring简介 Spring是一个轻量级的java开发框架.框架的主要优势之一就是分层架构,Spring使用基本的JavaBean,不仅限于服务器的开发.从简单性,可测试性和松耦合的角度而言,任 ...

  7. 设计一下类似SpringIoC的注入工具~Lind.DI

    通过注解(特性)的方式进行对象的注册与注入,方便,灵活! 本篇主要讲如何去实现,下一篇主要讲如何把它集成到mvc和api环境里,实现自动的注入! spring ioc工作的过程大致为,统一的注册组件, ...

  8. SpringIOC和DI

    1.Spring的概念 Spring的绿草丛(一) Spring轻量级框架, Java EE的春天,当前主流框架目标使现有技术更加易用,推进编码最佳实践内容IoC容器AOP实现数据访问支持简化JDBC ...

  9. 框架源码系列二:手写Spring-IOC和Spring-DI(IOC分析、IOC设计实现、DI分析、DI实现)

    一.IOC分析 1. IOC是什么? IOC:Inversion of Control控制反转,也称依赖倒置(反转) 问题:如何理解控制反转? 反转:依赖对象的获得被反转了.由自己创建,反转为从IOC ...

随机推荐

  1. Mysql数据操作《二》单表查询

    单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT 限制条数 关键字的执行 ...

  2. alicemq 方便的RabbitMQ 可视化工具

    尽管RabbitMQ 自带一个管理插件,但是还不是那么强大,alicemq 是一个方便强大的可视化工具 rabbitmq 环境准备 docker-compose 文件 version: "3 ...

  3. “全栈2019”Java第九章:解释第一个程序

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  4. 1.Java Spring MVC入门 安装

    Spring 下载地址: 4.3.6.RELEASE/ 25-Jan-2017 14:05 - http://repo.spring.io/release/org/springframework/sp ...

  5. 针对myeclipse6.5无法自动生成toString方法

    public void getToStringSTR(){ Field[] fs = this.getClass().getDeclaredFields(); for (int i = 0; i &l ...

  6. 洛谷 P4248 / loj 2377 [AHOI2013] 差异 题解【后缀自动机】【树形DP】

    可能是一个 SAM 常用技巧?感觉 SAM 的基础题好多啊.. 题目描述 给定一个长度为 \(n\) 的字符串 \(S\) ,令 \(T_i\) 表示它从第 \(i\) 个字符开始的后缀,求: \[ ...

  7. 限制USB延迟启动

    阻止用户从未经授权的位置安装设备驱动程序. 组策略 ...too long too see directly. what determins when a drivers i s  load. spe ...

  8. js从后台取值并绑定到元素上

    用ajax从后台取值不是什么有技术含量的活计,把后台取来的值绑定到Vue对象上也不算难,但每一次向后台拿数据的时候都得写上这么一段代码就十分痛苦了. 于是我写了这么一小段js代码,能够自己根据url去 ...

  9. 4.nginx动静分离

    动静分离,就是将css.js.jpg等静态资源和jsp等动态资源分开处理,以此提高服务器响应速度,提高性能. 核心就是区分动态和静态资源 图片转自:https://www.cnblogs.com/xi ...

  10. oracle12c之二 控制PDB中SGA 与 PGA 内存使用

    oracle12c之 控制pdb中sga 与 pga 内存使用 Memory Management using Resource Manager Oracle数据库资源管理器(资源管理器)现在可以在多 ...