Spring 之 IoC 学习笔记
1.为了代码的灵活性,我们一般采用面向接口编程,使用接口定义变量。
2.使用XXXServer 对XXX进行统一的操作,XXXServer 调用 XXX 的 XXXDAOImpl方法进行数据库的操作,实现对数据操作的封装。 XXXDAOImpl 实现了 XXXDAO 接口。
当 有多个 XXXServer 时,采用更大的 工厂类 或者 配置文件进行 统一管理。
3.测试时,建立 相应的 test 文件夹。
4.Spring 配置文件中在读 bean 的时候是用的反射机制的jvm的.class文件(采用classLoader)在调用类的方法。
5.什么是I o C ? (DI 依赖注入)
把要自己new的东西改为由容器来提供(初始化具体值,装配)
6.依赖注入的两种方式:setter注入、构造器注入
7.在bean中其实name属性和id属性是一样的。
8.Bean 中基本数据类型的注入,直接使用value=""或使用<property>的自标签<value>,这一般在配置数据库连接,写套接字时会用到。
9.Bean的范围:scope属性
常用的就singleton和prototype(原型)。
默认情况下,是singleton,拿到的都是同一个对象。如果设为prototype,则会新建一个bean对象。
谈及prototype作用域的bean时,在某些方面你可以将Spring容器的角色看作是Javanew操作符的替代者。
10.集合collection:
通过<list/>、<set/>、<map/>及<props/>元素可以定义和设置与JavaCollection类型对应List、Set、Map及Properties的值。
11.自动装配:autowire
常用的有byName 和byType:byName根据bean的name属性值去自动匹配bean,而byType会依据bean的数据类型去匹配,
当有两个或两个以上类型相同的bean的时候就会报错,所以要小心使用。
12.bean的生命周期:
ApplicationContext实现的默认行为就是在启动时将所有singleton bean提前进行实例化。
lazy-init="true" 延迟初始化bean。
init-method="init"destroy-method="destroy" 不要与 scope="prototype"一起使用,Spring不能对一个prototype bean的整个生命周期负责:容器在初始化、配置、装饰或者是装配完一个prototype实例后,将它交给客户端,随后就对该prototype实例不闻不问了。不管何种作用域,容器都会调用所有对象的初始化生命周期回调方法,而对prototype而言,任何配置好的析构生命周期回调方法都将不会被调用。
Spring 之 IoC 学习笔记相关推荐
- Spring Boot 2 学习笔记(2 / 2)
Spring Boot 2 学习笔记(1 / 2) - - - 45.web实验-抽取公共页面 46.web实验-遍历数据与页面bug修改 47.视图解析-[源码分析]-视图解析器与视图 48.拦截器 ...
- Spring Boot 框架学习笔记(五)( SpringSecurity安全框架 )
Spring Boot 框架学习笔记(五) SpringSecurity安全框架 概述 作用 开发示例: 1. 新建项目 2. 引入依赖 3. 编写`SecurityConfig`类,实现认证,授权, ...
- Spring Boot 框架学习笔记(二)(配置文件与数据注入 yaml基本语法 JSR303数据验证 多环境切换 )
Spring Boot 框架学习笔记(二) 六.appliaction.properties配置与数据注入 6.1 `@Value`注解 测试注入数据 读取输入流 6.2 读取配置文件数据注入 单文件 ...
- Spring源码学习笔记:Spring设计模式对比和Spring的OOB,BOP,AOP,IOC,DI/DL
1.博客内容均出自于咕泡学院架构师第三期 2.架构师系列内容:架构师学习笔记(持续更新) 1.GOF 23总设计模式归纳 分类 设计模式 创建型 工厂方法模式(Factory Method).抽象工厂 ...
- Spring源码学习笔记:起源发展和核心模块主要职能
1.博客内容均出自于咕泡学院架构师第三期 2.架构师系列内容:架构师学习笔记(持续更新) 1.Spring 的前世今生 早在 2007 年,一个基于 Java语言的开源框架正式发布,取了一个非常有活力 ...
- 尚硅谷Spring注解开发学习笔记
文章目录 前言 1.课程安排 1.1.容器 1.2.扩展原理 1.3.Web 2.配置文件开发 2.1.导入Spring-context依赖包 2.2.编写Spring配置文件 2.3.编写Perso ...
- 【Spring MVC】学习笔记汇总
Spring MVC 学习笔记汇总 Java 系列笔记:[Java系列笔记]语法基础 + Spring + Spring MVC + 数据结构 数据结构与算法笔记(这个牛逼!):<恋上数据结构& ...
- Spring源码学习笔记:经典设计模式之观察者模式
1.博客内容均出自于咕泡学院架构师第三期 2.架构师系列内容:架构师学习笔记(持续更新) 0.观察者模式(Observer Pattern) 观察者模式也叫发布订阅模式.定义了对象之间的一对多依赖,让 ...
- Spring源码学习笔记:经典设计模式之装饰者模式
1.博客内容均出自于咕泡学院架构师第三期 2.架构师系列内容:架构师学习笔记(持续更新) 0.装饰者模式(Decorator Pattern) 指在不改变原有对象的基础之上,将功能附加到对象上,提供了 ...
最新文章
- iOS 图片处理-图片旋转和裁剪
- 刻意练习:LeetCode实战 -- Task30.通配符匹配
- XML学习总结(2)——XML简单介绍
- Arduino学习笔记35
- Java可扩展实体_java – 是否可以通过扩展一个POJO来构建一个JPA实体?
- nginx proxy cache配置参数解读
- 安装 Windows Server 2008
- 造轮子-AgileConfig一个基于.NetCore开发的轻量级配置中心
- 在创业之路上,每个人都会有很多的老师
- 性能测试利器 - Locust框架解析
- 计算机四级笔试1,9月全国计算机等级考试四级网络工程师笔试试卷(1)
- 高新计算机考试1-8视频,最新版计算机高新考试 PS 第1单元1-8.doc
- select2复制下拉框clone
- php网上花店管理系统的论文,网上花店管理系统
- 博弈论模型——Part 2 Part 3
- BZOJ 3097 Hash Killer I
- 老板,上班迷路了,晚点到~
- du和df文件大小不一致问题排查
- WORD排版-目录管理/标题排版
- java写花束_Java作业 题目:16版.情人节送玫瑰花
热门文章
- 跨域之Generalizing Person Re-Identification by Camera-Aware Invariance Learning and Cross-Domain Mixup
- linux查看 tcp连接对应的程序,轻轻松松查看TCP连接及发起程序
- [源码和文档分享]基于VC++的四国军棋局域网联网游戏的设计与实现
- 苹果拒绝专利授权三星 诉讼或蔓延至中国地区
- PyTorch提升脚印
- 最新资讯:浩辰CAD机械2013软件将于6月强势推出
- 高云FPGA系列教程(5):ARM点灯工程设计
- 科学计算机安卓图像,Plotter图形科学计算器
- Telerik UI for Blazor组件,可访问和可定制的组件
- 【基金量化研究系列】大类资产配置研究(二)——股债二八轮动策略