具有字符串值的构造函数参数如何传递给接受整数的构造函数?
how does a constructor-arg having value as String passed to the Constructor accepting Integer?
我正在构建一个 Spring 应用程序项目,它使用 Spring DI(构造函数注入)来注入对象。
有一个学生 class -
public class Student {
private int id;
并且有构造函数
public Student(int id)
{this.id = id; }
我正在像这样使用构造函数注入来注入对象 ---
<constructor-arg name="id" value="1"/>
现在,这里值 (1) 作为 String 传递,但构造函数接受 int 。
我不知道 Spring 是怎么做到的。是简单的类型转换还是其他?
Spring 完成这项工作,下面是 spring 文档中的注释。
以下是 spring 文档中的文本:
4.Each 属性 或作为值的构造函数参数必须能够从指定的任何格式转换为该 属性 或构造函数参数的实际类型.默认情况下 Spring 可以将以字符串格式提供的值转换为所有内置类型,例如 int、long、String、boolean 等
Spring 这样做。以下注释来自spring documentation.
Each property or constructor argument which is a value must be able to be converted from whatever format it was specified in, to the actual type of that property or constructor argument. By default Spring can convert a value supplied in string format to all built-in types, such as int, long, String, boolean, etc.
我正在构建一个 Spring 应用程序项目,它使用 Spring DI(构造函数注入)来注入对象。 有一个学生 class -
public class Student {
private int id;
并且有构造函数
public Student(int id)
{this.id = id; }
我正在像这样使用构造函数注入来注入对象 ---
<constructor-arg name="id" value="1"/>
现在,这里值 (1) 作为 String 传递,但构造函数接受 int 。 我不知道 Spring 是怎么做到的。是简单的类型转换还是其他?
Spring 完成这项工作,下面是 spring 文档中的注释。
以下是 spring 文档中的文本:
4.Each 属性 或作为值的构造函数参数必须能够从指定的任何格式转换为该 属性 或构造函数参数的实际类型.默认情况下 Spring 可以将以字符串格式提供的值转换为所有内置类型,例如 int、long、String、boolean 等
Spring 这样做。以下注释来自spring documentation.
Each property or constructor argument which is a value must be able to be converted from whatever format it was specified in, to the actual type of that property or constructor argument. By default Spring can convert a value supplied in string format to all built-in types, such as int, long, String, boolean, etc.