使用Servlet建立日期格式化器 可格式化工程内所有日期


import  java.text.ParseException;
import  java.text.SimpleDateFormat;
import  java.util.regex.Pattern;

import  org.apache.commons.beanutils.Converter;

public   class  UtilDateConverter  implements  Converter {

    
private  SimpleDateFormat ymdhmsSSS  =   new  SimpleDateFormat(
            
" yyyy-MM-dd hh:mm:ss.SSS " );
    
private  SimpleDateFormat ymdhms  =   new  SimpleDateFormat(
            
" yyyy-MM-dd hh:mm:ss " );
    
private  SimpleDateFormat ymd  =   new  SimpleDateFormat( " yyyy-MM-dd " );

    
public  Object convert(Class arg1, Object arg2) {
        
if  ( null   !=  arg2  &&  arg2  instanceof  String) {
            
try  {
                String dateStr 
=  (String) arg2;
                
if  (Pattern.matches( " \\d{4}-\\d{1,2}-\\d{1,2}\\s\\d{1,2}:\\d{1,2}:\\d{1,2}.\\d{1,3} " , dateStr))
                    
return  ymdhmsSSS.parse(dateStr);
                
else   if  (Pattern.matches( " \\d{4}-\\d{1,2}-\\d{1,2}\\s\\d{1,2}:\\d{1,2}:\\d{1,2} " , dateStr))
                    
return  ymdhms.parse(dateStr);
                
else   if  (Pattern.matches( " \\d{4}-\\d{1,2}-\\d{1,2}\\s\\d{1,2}:\\d{1,2} " ,dateStr))
                    
return  ymdhms.parse(dateStr  +   " :00 " );
                
else   if  (Pattern.matches( " \\d{4}-\\d{1,2}-\\d{1,2}\\s\\d{1,2} " ,dateStr))
                    
return  ymdhms.parse(dateStr  +   " :00:00 " );
                
else   if  (Pattern.matches( " \\d{4}-\\d{1,2}-\\d{1,2} " , dateStr))
                    
return  ymd.parse(dateStr);
                
else   if  (Pattern.matches( " \\d{4}-\\d{1,2} " , dateStr))
                    
return  ymd.parse(dateStr  +   " -01 " );
            } 
catch  (ParseException e) {
                e.printStackTrace();
                
return   null ;
            }
        }
        
return   null ;
    }
    
/*
     * 此类的用法如下: 创建一个servlet,servlet里面只要一个init() 方法 
     * public void init(){
     *         ConvertUtils.register(new UtilDateConverter(), java.util.Date.calss); 
     * }
     * 然后在web.xml里注册此servlet类,类似代码如下
     * <servlet>
     *     <servlet-name>UtilDateConverterRegister</servlet-name>
     *     <servlet-class>包名.UtilDateConverterRegister</servlet-class>
     *     <load-on-startup>2</load-on-startup>
     * </servlet>
     * 注意:此servlet不需要编写<servlet-mapping>这个信息
     
*/

}

 

转载于:https://www.cnblogs.com/Simcoder/archive/2010/04/08/1707470.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值