Struts框架将使用setter方法自动将String转换为Enum

时间:2017-03-06 11:42:47

标签: java jsp enums struts2

我有一个枚举类如下:

public enum Sample {
    A("a"),
    B("b"),
    C("c");
    private String abc;
    Sample(String abc) {
        this.abc = abc;
    }
    public static Sample safeValueOf(String abc) {
        for (Sample value : values()) {
            if (value.name().equalsIgnoreCase(abc)) {
                return value;
            }
        }
        return C;
    }
    public String getAbc() {
        return abc;
    }
}

在动作类中我添加了如下属性:

public class SimpleAction {
    private String sample;
    //getters and setters
}

我是jsp我将字段ID作为样本(动作类中的属性)。并从UI获取值如下:

Sample.safeValueOf(getSample());

我在某处读到“Struts框架将使用setter方法自动将String转换为Enum”。那么,有没有办法从表单中设置和获取Enum类型的值?

如何在Action类中将表单值作为Enum属性获取?

0 个答案:

没有答案