Spring依赖注入之setter注入与构造器注入以及applicationContext.xml配置文件特殊值处理

依赖注入之setter注入

在管理bean对象的组件的时候同时给他赋值,就是setter注入,通过setter注入,可以将某些依赖项标记为可选的,因为它们不是在构造对象时立即需要的。这种方式可以减少构造函数的参数数量,使得类的构造函数更加简洁。

注:既然是setter注入,则对象的属性必须是有setter方法的,否则会报如下错误:

配置文件里面的name属性的值是由getXxx,setXxx方法定义的,和成员变量是无关的

Spring依赖注入之setter注入与构造器注入以及applicationContext.xml配置文件特殊值处理_第1张图片

依赖注入之构造器注入

构造器注入器要求实体类对象必须有满参构造器和空参构造器,并且在注入的时候,满参构造器里的全部都要注入,否则会报参数匹配异常。

Spring依赖注入之setter注入与构造器注入以及applicationContext.xml配置文件特殊值处理_第2张图片

特殊值处理

为什么Integer类型也可以用字符串注入数据?

Spring依赖注入之setter注入与构造器注入以及applicationContext.xml配置文件特殊值处理_第3张图片

Spring会在后台使用适当的转换器将字符串值转换为目标数据类型。对于基本数据类型和包装类,Spring提供了默认的转换器,可以将字符串转换为对应的数据类型。因此,尽管你提供的是一个字符串,Spring会自动将其转换为Integer类型并成功注入到对应的属性中。

在xml有一些特殊的符号不能使用,要进行转义或者处理

使用xml实体来表示

使用CDATA节

Spring依赖注入之setter注入与构造器注入以及applicationContext.xml配置文件特殊值处理_第4张图片

你可能感兴趣的:(spring,sql,java,maven)