OGNL

简介

  

  

  

类型转换

  

  

  

  

  

 自定义类型转换器

  

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Map;

import org.apache.struts2.util.StrutsTypeConverter;

import com.opensymphony.xwork2.conversion.TypeConversionException;

public class DateConverter extends StrutsTypeConverter {

    private final DateFormat[] dfs = { 
            new SimpleDateFormat("yyyy年MM月dd日"),
            new SimpleDateFormat("yyyy-MM-dd"),
            new SimpleDateFormat("MM/dd/yy"),
            new SimpleDateFormat("yyyy.MM.dd"),
            new SimpleDateFormat("yyyyMMdd"),
            new SimpleDateFormat("yyyy/MM/dd") };

    @Override
    public Object convertFromString(Map context, String[] values, Class toType) {
        String dateStr = values[0];
        for (DateFormat df : dfs) {
            try {
                return df.parse(dateStr);
            } catch (ParseException e) {
                continue;
            }
        }
        throw new TypeConversionException();
    }

    @Override
    public String convertToString(Map context, Object object) {
        Date date = (Date) object;
        return new SimpleDateFormat("yyyy-MM-dd").format(date);
    }

}
DateConverter.java

   

 处理类型转换错误

  

  

  

OGNL表达式

  

  

  

  

  

 访问非值栈对象

  

  

  

  

  

Struts 2标签

 属性类型

  

 URL标签

  

 日期标签

  

 

posted @ 2018-08-26 11:09  小黄豆'  阅读(182)  评论(0编辑  收藏  举报