• SpringMVC 自定义全局日期转换器


    第一步: 编写自定义转换器的类

    /*
     * 自定义日期转换器
     */
    public class CustomDateConverter implements Converter<String, Date>  {
    
    	private static final List<String> formarts = new ArrayList<String>(4);
    	static{
    		formarts.add("yyyy-MM");
    		formarts.add("yyyy-MM-dd");
    		formarts.add("yyyy-MM-dd hh:mm");
    		formarts.add("yyyy-MM-dd hh:mm:ss");
    	}
    	
    	@Override
    	public Date convert(String source) {
    		String value = source.trim();
    		if ("".equals(value)) {
    			return null;
    		}
    		if(source.matches("^\d{4}-\d{1,2}$")){ 
    			return parseDate(source, formarts.get(0));
    		}else if(source.matches("^\d{4}-\d{1,2}-\d{1,2}$")){
    			return parseDate(source, formarts.get(1));
    		}else if(source.matches("^\d{4}-\d{1,2}-\d{1,2} {1}\d{1,2}:\d{1,2}$")){
    			return parseDate(source, formarts.get(2));
    		}else if(source.matches("^\d{4}-\d{1,2}-\d{1,2} {1}\d{1,2}:\d{1,2}:\d{1,2}$")){
    			return parseDate(source, formarts.get(3));
    		}else {
    			throw new IllegalArgumentException("Invalid boolean value '" + source + "'");
    		}
    	}
    
    	/*
    	 * 功能描述:格式化日期
    	 */
    	public  Date parseDate(String dateStr, String format) {
    		Date date=null;
    		try {
    			DateFormat dateFormat = new SimpleDateFormat(format);
    			date = (Date) dateFormat.parse(dateStr);
    		} catch (Exception e) {
    		}
    		return date;
    	}
    }

    第二步: 在springmvc中的配置文件在配置

    image

    第三步:测试

    image

         username = 小明
         birthday = Wed Apr 22 18:22:33 GMT+08:00 1992

  • 相关阅读:
    CSS3 实现六边形Div图片展示效果
    自己编写jQuery插件 之 放大镜
    自己编写jQuery插件 之 无缝滚动
    C#装箱拆箱
    C#基础知识
    数据库锁
    SQL2008中Merge的用法
    SQl去获取相同记录
    判断DataRow中是否包含某列
    Quartz中时间表达式的设置-----corn表达式
  • 原文地址:https://www.cnblogs.com/yangang2013/p/5686086.html
Copyright © 2020-2023  润新知