spring学习笔记05(狂神学习笔记)-IOC小结
使用Spring来创建对象
在Spring这些都称为Bean
老式:
类型变量名= new类型();
Hello heLLo = new HeLLo();
spring:
id =变量名
cLass = new的对象;
property 相当于给对象中的属性设置一个值
新式
<bean id="mysqlImpl" class="com.dao.UserDaoMysqlImpl"/><bean id="UserServiceImpl" class="com.service.UserServiceImpl">
<!-- ref :引用Spring容器中创建好的对象value :具体的值,基本数据类型!
--><property name="userDao" ref="mysqlImpl"/>
IOC创建对象的类型
1.使用无参构造创建对象,默认!
<bean id="user" class="com.pojo.User"><property name="name" value="狂徒张三"/></bean>
2.假设我们要使用有参构造创建对象。
1.下标赋值
<bean id="user" class="com.pojo.User"><!-- 有参函数,下标赋值--><constructor-arg index="0" value="下标赋值"/></bean>
2.类型赋值(不建议使用)
<bean id="user" class="com.pojo.User"><constructor-arg type="java.lang.String" value="类型赋值"/></bean>
3.直接通过参数名设置
<bean id="user" class="com.pojo.User"><constructor-arg name="name" value="狂徒张三"/></bean>
========================================================
设置别名:
<alias name="user" alias="userDDDD"/>
导入XML
<import resource="beam1.xml"/>
Set方式注入【重点】
依赖注入:Set注入!
依赖: bean对象的创建依赖于容器!
注入: bean对象中的所有属性,由容器来注入!
多种注入方式
<bean id="address" class="com.pojo.Address"><property name="address" value="武汉"/></bean><bean id="student" class="com.pojo.Student"><!-- 普通注入,value--><property name="name" value="狂徒张三"/><!-- beam注入,ref--><property name="address" ref="address"/><!-- 数组注入--><property name="book"><array><value>热风</value><value>且介亭杂文</value><value>而已集</value><value>孔乙己</value></array></property><!-- 集合list注入--><property name="habit"><list><value>听歌</value><value>写作</value><value>游泳</value><value>摸鱼</value></list></property><!-- map注入--><property name="cord"><map><entry key="身份证" value="1111111111111"/><entry key="手机号" value="1888888888"/></map></property><!-- set注入--><property name="games"><set><value>LOL</value><value>GTA</value><value>DNF</value><value>CF</value></set></property><!-- string注入-->
<!-- <property name="wife" value=""/>--><property name="wife"><null/></property><!-- property注入--><property name="info"><props><prop key="学号">20200000</prop><prop key="班级">1800</prop><prop key="score">80</prop></props></property></bean>
P命名空间注入-------------使用无参构造
在配置里加
xmlns:p="http://www.springframework.org/schema/p"
beam里:
<!-- 命名空间P注入--><bean id="user" class="com.pojo.User" p:age="18" p:name="狂徒张三"/>
================================================================================
C命名空间注入--------------------需要有参构造
xmlns:c="http://www.springframework.org/schema/c"
beam的作用域
代理模式:
1.-单例模式(Spring默认机制)--只
<bean id="user" class="com.pojo.User" p:age= "18" p:name="狂徒张三" scope="singleton"/>2.原型模式---每一次从容器中get的时候,都会产生新的对象
<bean id="user" class="com.pojo.User" p:age= "18" p:name="狂徒张三" scope="prototype"/>
spring学习笔记05(狂神学习笔记)-IOC小结相关推荐
- 狂神mysql笔记 md_MyBatis狂神总结笔记
MyBatis狂神总结笔记 简介 分享自写源码和笔记 配置用的 jdk13.0.2 (jdk1.7以上均可) Maven 3.6.3 MySQL 5.7 (mysql5.6以上均可) 1. 配置 po ...
- 周学习进度---05
周学习进度 --05 周学习进度05 第15周 所花时间: 120min+60min+120min 代码量(行) 300 博客量(篇) 2篇个人博客+2篇团队博客 了解到的知识 css的相关知识 用户 ...
- SpringMVC(狂神学习笔记)2021-10-5
注意:本笔记是在学习狂神的视频教程的记录 1.回顾MVC 1.1.什么是MVC MVC是模型(Model).视图(View).控制器(Controller)的简写,是一种软件设计规范. 是将业务逻辑. ...
- Spring5(引用-->狂神学习笔记)2021-08
狂神学习笔记 Spring5 1.Spring 1.1 简介 2002,首次推出Spring框架的雏形;interface21框架 Spring框架以interface21框架为基础,2004年发布1 ...
- JavaWeb(引用-->狂神学习笔记)2021-08
狂神学习笔记 1.基本概念(①) 1.1 前言 web开发: web,网页的意思,www.baidu.com· 静态web html,css 提供给所有人看的数据始终不会发生变化! 动态web 淘宝, ...
- JavaWeb黑马旅游网-学习笔记05【分类数据展示功能】
Java后端 学习路线 笔记汇总表[黑马程序员] JavaWeb黑马旅游网-学习笔记01[准备工作] JavaWeb黑马旅游网-学习笔记02[注册功能] JavaWeb黑马旅游网-学习笔记03[登陆和 ...
- JavaWeb-综合案例(用户信息)-学习笔记05【分页查询功能】
Java后端 学习路线 笔记汇总表[黑马程序员] JavaWeb-综合案例(用户信息)-学习笔记01[列表查询] JavaWeb-综合案例(用户信息)-学习笔记02[登录功能] JavaWeb-综合案 ...
- JavaScript学习笔记05【高级——DOM对象】
w3school 在线教程:https://www.w3school.com.cn JavaScript学习笔记01[基础--简介.基础语法.运算符.特殊语法.流程控制语句][day01] JavaS ...
- MySQL学习笔记05【多表操作、三大范式、数据库的备份和还原】
MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...
- spring cloud Alibaba 的 Nacos学习笔记
spring cloud Alibaba 的 Nacos学习笔记 文章目录 spring cloud Alibaba 的 Nacos学习笔记 下载nacos spring cloud Alibaba依 ...
最新文章
- Python的闭包和装饰器
- python知识点 07-11
- java rmi 使用方法
- MySQL时间戳(毫秒/秒)与日期格式的相互转换
- 阿里妈妈首次公开新一代自研智能检索模型 | WWW 2018论文解读
- 11个笑话让你领悟人生
- A/B HDU - 1576 (逆元或拓展欧几里得或数学公式)多解法求大数结果
- redis java连接出错_redis连接错误与spring boot
- 【Java数据结构与算法】第九章 顺序查找、二分查找、插值查找和斐波那契查找
- PHP自动加载下——PSR4
- log4j + flume 1.6 集成
- Solidworks如何在自定义的基准面上创建3D草图
- 进阶程序员都不会急于学习编程语言,知道原因吗?
- SHEL脚本中调用另外一个脚本的函数和变量
- 点云应用于电力行业助力输配电安全距离检测分析以及精细化巡检
- 使用HttpClient和OkHttp实现模拟登录方正教务系统
- csm和uefi_是否应该使用UEFI或BIOS(旧版/ CSM)引导模式安装操作系统?[重复]
- 【神经网络分类器】(三)深度学习发展史——从深度信念网络到AlexNet
- 解决VMware下Win10主机和win7虚拟机实现文件共享问题
- This License XXX has been cancelled