struts2 转换器

Posted 赵天成123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了struts2 转换器相关的知识,希望对你有一定的参考价值。

转换器可解决的问题:输入界面 或 输出界面   与对象 或 数据库数据类型不一致时或者格式不一致时

例如:输入一个身份证号,自动解析出生日期或其他信息

 

自定义转换器需要两个步骤:

1、做一个类,继承  StrutsTypeConverter

package com.maya.util;

import java.util.Map;

import org.apache.struts2.util.StrutsTypeConverter;

import com.itnba.maya.model.Student;

public class StudentConverter extends StrutsTypeConverter {

    @Override
    public Object convertFromString(Map arg0, String[] arg1, Class arg2) {
        String str = arg1[0];    
        String nian = str.substring(6, 10);
        String yue  = str.substring(10, 12);
        String ri   = str.substring(12, 14);
        
        String shengri= nian + "年"+ yue + "月" + ri + "日";
        
        return shengri;
    }

    @Override
    public String convertToString(Map arg0, Object arg1) {

        return null;
    }

}

 

2、全局转换:在src根下,建立xwork-conversion.properties文件。配置好实体类与转换类的二者完全限定名对应关系。(文件名必须是这个,不能改变)

com.maya.model.ceshi=com.maya.util.ZhuanHuanQi

//当调用这个实体类时,就调用这个转换器

 

  局部转换:在action的包里面,建立 Action类名 -conversion.properties文件(ZhuanHuanAction -conversion.properties)配置好成员变量与转换类的对应关系。

stu=com.itnba.maya.util.ZhuanHuanQi

 

以上是关于struts2 转换器的主要内容,如果未能解决你的问题,请参考以下文章

struts2类型转换中的错误处理

struts2中的类型转换

Struts2类型转换

struts2_struts类型转换

在代码片段中包含类型转换

sql 日期转换代码片段 - Dato,120,konvertere