梦幻之旅

DEBUG - 天道酬勤

   :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  671 随笔 :: 6 文章 :: 256 评论 :: 0 Trackbacks
package org.rw.commons.util;

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

import org.apache.struts2.util.StrutsTypeConverter;

/**
 * 
 * <p>
 * Title:[自定义日期转化类]
 * </p>
 * <p>
 * Description: [把字符串转化成日期或把日期转化成字符串]
 * </p>
 * <p>
 * Copyright 2009 Huyvanpull Co., Ltd.
 * </p>
 * <p>
 * All right reserved.
 * </p>
 * 
 * 
@version 1.0
 * 
 * <p>
 * Created by [Huyvanpull] [Mar 26, 2009]
 * </p>
 * <p>
 * Midified by [修改人] [修改时间]
 * </p>
 * 
 
*/

public class DateConverter extends StrutsTypeConverter
{
    
    
/** 默认的日期转换格式 */
    
public static final String DEFAULT_DATE_FORMAT = "yyyy-MM-dd HH:mm";
    
    
/** 可接受的日期格式 */
    
public static final DateFormat[] ACCEPT_DATE_FORMATS = {
            
new SimpleDateFormat(DEFAULT_DATE_FORMAT),
            
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"),
            
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS") }
;
    
    @SuppressWarnings(
"unchecked")
    
public Object convertFromString(Map context, String[] values, Class toClass)
    
{
        
if (values[0== null || values[0].trim().equals(""))
        
{
            
return null;
        }

        
/** 尝试从默认值开始转换 */
        
for (DateFormat format : ACCEPT_DATE_FORMATS)
        
{
            
try
            
{
                
return format.parse(values[0]);
            }

            
catch (Exception e)
            
{}
        }

        
return null;
    }

    
    @SuppressWarnings(
"unchecked")
    
public String convertToString(Map context, Object o)
    
{
        
if (o instanceof Date)
        
{
            
try
            
{
                
return ACCEPT_DATE_FORMATS[0].format((Date) o);
            }

            
catch (RuntimeException e)
            
{
                
return "";
            }

        }

        
return "";
    }

}



局部配置方法:
QueryDataAction-conversion.properties
startTime = org.rw.commons.util.DateConverter
endTime = org.rw.commons.util.DateConverter
posted on 2009-03-26 18:23 HUIKK 阅读(745) 评论(0)  编辑  收藏 所属分类: Struts

只有注册用户登录后才能发表评论。


网站导航: