欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JDK的PropertyEditor简单使用

程序员文章站 2022-03-31 11:06:51
...

1:写在前面

属性编辑器PropertyEditor是用来将其中数据类型转换为另一种数据类型,是数据类型转换规范接口,在spring中也提供了类似的功能,源码如下:

java.beans.PropertyEditor
public interface PropertyEditor {
	// 设置需要编辑的属性
	void setAsText(String text) throws java.lang.IllegalArgumentException;
	// 获取字符串的结果值
	String getAsText();
	// 获取编辑后的属性值
	Object getValue();
}

2:实现类

2.1:基础实现类

java.beans.PropertyEditorSupport
public class PropertyEditorSupport implements PropertyEditor {
	public String getAsText() {
        return (this.value != null)
                ? this.value.toString()
                : null;
    }
    public void setAsText(String text) throws java.lang.IllegalArgumentException {
        if (value instanceof String) {
            setValue(text);
            return;
        }
        throw new java.lang.IllegalArgumentException(text);
    }
    public Object getValue() {
        return value;
    }
}

2.2:其它具体实现类

具体数据类型的实现类,部分如下:
JDK的PropertyEditor简单使用

3:例子

3.1:使用IntegerEditor

将字符串转换为Integer。

3.2:测试

public class PropertyEditorTest {
    public static void main(String[] args) {
//        IntegerEditor integerEditor = new IntegerEditor();
        PropertyEditor integerEditor = PropertyEditorManager.findEditor(int.class);
        // 设置需要转换的字符串数据
        integerEditor.setAsText("400");
        // 获取转换后的结果
        Object resultVal = integerEditor.getValue();
        System.out.println("值是:");
        System.out.println(resultVal);
        System.out.println("类型是:");
        System.out.println(resultVal.getClass());
    }
}

运行:

值是:
400
类型是:
class java.lang.Integer
相关标签: java