阶段3 2.Spring_03.Spring的 IOC 和 DI_10 构造函数注入
在AccountServiceImpl内定义三个属性

这里关注点是这几种类型。基本类型的包装类Integer 还有String类型,也包含了其他bean类型。Date

定义构造函数并赋值


重点关注在数据类型上

配置文件中,这里已经开始报错了。这种方式是默认构造函数的形式。因为AccountServiceImpl已经没有了默认构造函数

constructor-arg里面有5个属性

设置type属性为String类型。value值为test

这样就会把test中注入到构造函数中是String类型的成员。但是如果我们的参数有两个String参数的话就看不出来给谁注入了。所以type并不能独立实现注入


常用的是name

输入name就会只能提示,让你选择哪几个属性

接下来给age赋值 18

日期赋值

这个日期并不是我们说的日期对象。它只是一个普通的字符串。

运行测试







这里改成ref,是引用关联的bean对象的意思。

再次执行测试

这里把name改成中文

运行测试

ref和value


现在这个类的构造函数,必须是三个参数。少提供一个都无法创建,这就是缺点

这种方式除非必须的情况,一般不用
阶段3 2.Spring_03.Spring的 IOC 和 DI_10 构造函数注入的更多相关文章
- 阶段3 2.Spring_03.Spring的 IOC 和 DI_3 spring基于XML的IOC环境搭建和入门
创建新项目 修改为jar包的方式 把上一个工程内的代码 java下的com复制过来 由于配置文件没有,所以一运行就会报错 factory文件夹整个删除 dao的实现类 这里删除 测试类保留这两行代码 ...
- 阶段3 2.Spring_03.Spring的 IOC 和 DI_2 spring中的Ioc前期准备
适应配置的方式解决我们刚才的编码操作 -dist结尾的就是spring 的开发包 解压好的 这里面是约束 libs是扎包 三个为一组,实际上只有21个 自己在使用需要导入jar包的时候,选择这种没有任 ...
- 阶段3 2.Spring_03.Spring的 IOC 和 DI_1 ioc的概念和作用
IOC的含义 new的方式创建对象,是主动去找对象.对我的资源独立就变的很难,因为这有明显的依赖关系 第二种方式创建对象.app断开了和资源的联系,.而是去找工厂要一个资源.由工厂负责和资源去的联系, ...
- 阶段3 2.Spring_03.Spring的 IOC 和 DI_9 spring的依赖注入
新建工程 改成jar包 加入spring的依赖 复制之前的工程代码 再复制配置文件 fac factory整个删除 构造函数也删除.删除后的代码.如下 配置文件中的注释都删除掉 spring中的依赖注 ...
- 阶段3 2.Spring_03.Spring的 IOC 和 DI_8 spring中bean的细节之生命周期
区分单例还是多例对象 单例的几个状态 初始化方法和销毁方法 设置成我们定义的方法 测试 有创建和初始化.但是没有销毁,.对象一直没有销毁的方法 main方法是一切应用程序的入门.当main方法结束后. ...
- 阶段3 2.Spring_03.Spring的 IOC 和 DI_7 spring中bean的细节之作用范围
bean的作用范围调整. 我们的bean通常情况下都是一个单例的模式 Spring是否也知道这些都是单例 构造函数只走了一次.也就是spring这个对象默认情况就是单例的 scope属性 定义bean ...
- 阶段3 2.Spring_03.Spring的 IOC 和 DI_6 spring中bean的细节之三种创建Bean对象的方式
目前这里能调用是因为,在service的实现类里面,new了一个dao的对象 正常情况下 这里不应该是new一个对象,应该等于null或为空 设置为空侯再运行就会报错 出错的原因是这里为null 需要 ...
- 阶段3 2.Spring_03.Spring的 IOC 和 DI_5 BeanFactory和ApplicationContext的区别
核心容器的两个接口.ApplicationContext和BeanFactory 怎么知道对象被创建了呢 我们只需要在实现类里面构造函数内打印输出一段话 然后再这里加上一个断点 运行程序,光标停在这个 ...
- 阶段3 2.Spring_03.Spring的 IOC 和 DI_12 注入集合数据
再复制一份,改名3 常用的注入方式,这里选择set saveAccount方法输出所有的对象 map需要导包 配置xml 集合类型的值配置方式 在property标签里面再写标签 这里选择array. ...
随机推荐
- C++中写文件ofstream 的<< 操作符 与C风格的fwrite 的笔记
在某次工作中,调用了某SDK接口,该接口通过一个回调函数返回需要的内容.我们需要的内容是H.264码流,该码流通过一个unsigned char* 变量带回,另外还有一个长度 int length.为 ...
- Jenkins 入门系列--jenkins 介绍
第一章 Jenkins是什么? Jenkins 是一个可扩展的持续集成引擎. 主要用于: l 持续.自动地构建/测试软件项目. l 监控一些定时执行的任务. Jenkins拥有的特性包括: l 易于安 ...
- oracle修改某个表的字段顺序
有时候会发现某个表的列顺序不理想,想修改 -1查询表, select * from AIRWAY_TYPE t --2 查询用户和表名,找到obj#,select object_id from all ...
- 动画学习之Music图形绘制
今天来实现一个类似于网易云音乐类似的动态效果,在用网易云音乐听歌时会有一个类似这样的效果,如下: 而咱们这次要实现的效果如下: music图形的绘制: 在实现动画之前先来将静态的图形绘制出来, 如下: ...
- svn提交报错 解决方法
1.先clean 2.删除 .lock文件 3.update项目 4.先还原文件,然后update 接着commit
- CVE漏洞分析
分析cve-2018-9489漏洞和download content provider(CVE-2018-9468, CVE-2018-9493, CVE-2018-9546), 每人至少选择一个漏洞 ...
- Linux使用技巧汇总
Debian是我日常使用的桌面系统,这里记录了我在使用Debian和其他Linux时所有的问题和解决办法,以及一些其他的心得体会. 向Debian致敬! 找回桌面系统关机按钮 在/etc/polkit ...
- django 之视图层及模板层 04
目录 视图层 render方法是Template和Contex两个对象的组合使用 JsonResponse对象 CBV及源码分析 CBV 加装饰器的方式 模板层 模板语法传值 模板语法 变量 过滤器( ...
- 最新天猫3轮面试题目:虚拟机+并发锁+Sql防注入+Zookeeper
天猫一面 自我介绍.项目介绍 Spring拦截器.实现了哪些方法?底层原理 AOP如何配置,底层原理.2种动态代理,aop注解实现,xml定义切面 Bean的作用域,单例模式是否线程安全?恶汉模式是否 ...
- HTML标签与属性
HTML中常用的一些标签和属性. 1.lang属性:搜索引擎 en:英文, zh:中文 2.meta:元数据 charset属性:字符集编码方式 3.h1~h6:标题 一级标题 ...