zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    npm 之 --save , -D,--save -dev的区别
    webpack 之 打包(最新版)
    npm 与 yarn 对比
    webpack 之 打包图片文件
    webpack 之 打包less文件
    javascript 之 Event Loop
    package.json中type的含义
    webpack 之 打包css文件操作
    常见问题 之 webpack打包css问题
    类方法和对象方法
  • 原文地址:https://www.cnblogs.com/yangang2013/p/5686086.html
Copyright © 2011-2022 走看看