spring mvc 请求参数日期格式化 代码

package com.sbl.pay.subaccount.converter;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.regex.Pattern;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.core.convert.converter.Converter;
import org.springframework.stereotype.Component;

import com.sbl.pay.subaccount.consumer.SxfQueryReceiver;

/**
 * 日期转化器
 * @author ZHANGYUKUN
 *
 */
@Component
public class DateConverter implements Converter<String,Date> {
		private static final Logger logger = LoggerFactory.getLogger(SxfQueryReceiver.class);
   
	 	DateFormat ymdFormat  = new SimpleDateFormat("yyyy-MM-dd");
	 	DateFormat ymdhfmFormat  = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	 
	    Pattern ymd = Pattern.compile("^\\d{4}-\\d{1,2}-\\d{1,2}$");
	    Pattern ymdhfm = Pattern.compile("^\\d{4}-\\d{1,2}-\\d{1,2}$");

	    @Override
	    public Date convert(String dataStr) {
	        dataStr = dataStr.trim();
	        if ("".equals(dataStr) || dataStr.length()< 10 ) {
	            return null;
	        }
	       
	        try {
	        	if(  ymd.matcher(dataStr).matches()  ) {
		        	ymdFormat.parse(dataStr);
		        }else if(  ymdhfm.matcher(dataStr).matches()   ) {
		        	return  ymdhfmFormat.parse(dataStr);
		        }
	        }catch (Exception e) {
	        	if( logger.isErrorEnabled() ) {
	        		logger.error( "日期装换错误,默认返回null" );
	        	}
	        	return null;
	        }
			return null;
	    }
	
}

  

继承 Converter 实现 转化接口就可以了

posted on 2018-09-07 16:23  zhangyukun  阅读(254)  评论(0编辑  收藏  举报

导航