一.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. day03.2-内置函数的使用

    1. 取绝对值函数,abs() res = abs(-1) print(res) """ 运行结果:1 结果分析:计算-1的绝对值 """ ...

  2. python模块之——tqdm(进度条)

    from tqdm import tqdm for i in tqdm(range(10000)): """一些操作""" pass 效果: ...

  3. [redis] 数据特性简单实验

    位图 由bit位组成的数组,实际的底层数组类型是字符串,而字符串的本质是二进制大对象,所以将其视作位图,位图存储的是boolean指,一定程度上可以减少存储空间. -- 设置位图指定偏移量的比特位的值 ...

  4. 使用Mondrian Virtual OLAP Cube 实现星座模型并在saiku展现分析

    1.什么是星座模型? 2.哪些地方可以用到星座模型? 3.Mondrian怎么构建星座模型,构建过程又涉及到哪些理论概念. 答1:这里描述了维度模型常用的 星型.雪花.星座模型,简而言之就是多事实表模 ...

  5. Intellij idea maven 引用无法搜索远程仓库的解决方案

    打开项目的POM文件,ALT+Insert键 出来添加引用的窗口 说明无法搜索到远程仓库,需要怎么设置呢? 在intellij idea 中配置好maven后 是这样的 如果加载失败,则需要自定义远程 ...

  6. ElasticSearch 因为磁盘空间不够引起的数据插入错误。(message [ClusterBlockException[blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];]])

    ES升级到624测试从Kettle插入数据的时候,经常提示如下错误 message [ClusterBlockException[blocked by: [FORBIDDEN/12/index rea ...

  7. 除了ROS, 机器人定位导航还有其他方案吗?

    利用ROS进行机器人开发,我想大多数企业是想借助ROS实现机器人的导航.定位与路径规划,它的出现大大降低了机器人领域的开发门槛,开发者无需向前人一样走众多弯路,掌握多种知识才能开始实现机器人设计的梦想 ...

  8. 微信小程序通过background-image设置背景图片

    微信小程序通过background-image设置背景:只支持线上图片和base64图片,不支持本地图片:base64图片设置步骤如下:1.在网站http://imgbase64.duoshitong ...

  9. java web 工程创建及servlet简单使用

    1.java web工程创建 (1)File--->new--->project (2)选择java enterprise,按照下图操作 (3)点击next后,会进入如下界面,修改工程名后 ...

  10. 【算法笔记】B1050 螺旋矩阵

    1050 螺旋矩阵 (25 分)   本题要求将给定的 N 个正整数按非递增的顺序,填入“螺旋矩阵”.所谓“螺旋矩阵”,是指从左上角第 1 个格子开始,按顺时针螺旋方向填充.要求矩阵的规模为 m 行  ...