Struts2自定义转换器

三种自定义转换器的 接口or 抽象类

接口:TypeConverter,需要实现很多变量。。麻烦

抽象类:DefaultTypeConvert,对TypeConverter做了基本的实现,只需要覆盖convertValue就好了。但是需要自己判断转化方向

抽象类:StrutsTypeConvert,DefaultTypeConvert的进化版,可以自己判断转化方向,只需要在converterToString和converterFromString之内写就好了~

下面是转化器的例子,把形如 123-456 的电话转化为Tel(含区号和电话部分),再把Tel转化为String

index.jsp

        <s:form action="tel">
            <s:textfield name="tel" />
            <s:submit value="提交" />
        </s:form>

struts.xml

        <action name="tel" class="actions.ConverterAction">
            <result name="success">/result.jsp</result>
        </action>

ConverterAction目录下要有一个ConverterAction-conversion.properties

tel=Converter.TypeConverter

ConverterAction

package actions;

import com.opensymphony.xwork2.ActionSupport;

public class ConverterAction extends ActionSupport
{
    private Tel tel;

    public void setTel(Tel t)
    {
        tel = t;
    }

    public Tel getTel()
    {
        return tel;
    }
   

    public String execute()
    {
        return SUCCESS;
    }
}

result.jsp

电话:<s:property value="tel" />

Leave a Reply

Your email address will not be published. Required fields are marked *