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 实现 转化接口就可以了

spring mvc 请求参数日期格式化 代码的更多相关文章

  1. Spring MVC请求参数绑定 自定义类型转化 和获取原声带额servlet request response信息

    首先还在我们的框架的基础上建立文件 在domian下建立Account实体类 import org.springframework.stereotype.Controller; import org. ...

  2. Spring MVC请求参数绑定

    所谓请求参数绑定,就是在控制器方法中,将请求参数绑定到方法参数上 @RequestParam 绑定单个请求参数到方法参数上 @RequestParam("id") Integer ...

  3. spring mvc请求参数中文乱码解决方案

    POST 请求 在web.xml中加上增加过滤器 <filter> <filter-name>encodingFilter</filter-name> <fi ...

  4. spring mvc绑定参数之 类型转换 有三种方式:

    spring mvc绑定参数之类型转换有三种方式: 1.实体类中加日期格式化注解(上次做项目使用的这种.简单,但有缺点,是一种局部的处理方式,只能在本实体类中使用.方法三是全局的.) @DateTim ...

  5. Spring RestController 请求参数详解

    Spring RestController 请求参数详解 引用作者jpfss 在阅读之前,最好先了解http请求的get,post,以及各种head头类型,请求参数类型. 无参数,设置RestCont ...

  6. Spring MVC接收参数(Map,List,JSON,Date,2个Bean)(记录一次面试惨状)

    题目Spring MVC 接收参数 MapListDate2个BeanJSON Spring MVC接收参数 -Map Spring MVC接收参数 -List Spring MVC接收参数 -dat ...

  7. Spring3 MVC请求参数获取的几种方法

    Spring3 MVC请求参数获取的几种方法 一.      通过@PathVariabl获取路径中的参数 @RequestMapping(value="user/{id}/{name}&q ...

  8. Spring3 MVC请求参数获取的几种方法[转]

    Spring3 MVC请求参数获取的几种方法 Spring3 MVC请求参数获取的几种方法 一.      通过@PathVariabl获取路径中的参数 @RequestMapping(value=& ...

  9. spring mvc绑定参数之日期类型转换

    问题复现步骤: 1.提交表单,参数为: 2.接收参数类型为product实体类,如下 3.错误日志如下: org.springframework.validation.BindException: o ...

随机推荐

  1. jmeter中操作数据库

    jmeter是如何操作数据库的? 步骤一:导入jdbc的jar包,jmeter本身不能直接连接mysql,所以需要导入第三方的jar包来连接mysql 点击测试计划,添加classpath,选择mys ...

  2. Oracle create tablespace 、create user and so on

    1.创建临时表空间 CREATE TEMPORARY TABLESPACE test_tempTEMPFILE 'C:\oracle\product\10.1.0\oradata\orcl\test_ ...

  3. django中scrf的实现机制

    第一步:django第一次响应来自某个客户端的请求时,后端随机产生一个token值,把这个token保存在SESSION状态中,后端把这个token放到cookie中交给前端页面. 第二步:下次前端需 ...

  4. Python Algorithms – chapter3 计数初步

    一些基本递归式的解决方案及其应用实例 主定理的三种情况 排序算法之侏儒排序法 def gnomesort(seq): i = 0 while i < len(seq): if i == 0 or ...

  5. React native Configuration with name 'default' not found.

    添加插件后出现异常 FAILURE: Build failed with an exception. * What went wrong: A problem occurred configuring ...

  6. ubuntu下载超快的一个站点

    http://mirrors.163.com/ubuntu-releases/14.04/

  7. Scrum_Sprint

    1.计划会议过程 经过一天的讨论研究,我们对该项目进行了需求分析,确定了这周所要实现的各个功能 并做好了任务看板,并将项目的各个功能分成一个个任务,进行了初步的分工 2.backlog BACKLOG ...

  8. git 提交去除每次输账号密码

    问题:在使用git代码仓库时,使用git clone 获取代码时,如果使用的是https协议,则在每次push时需要输入账号密码. 相关文档:文档一,文档二 验证了文档一种的方法二可用,记录一下 创建 ...

  9. Django之模板层-语法:{{ }}

    模版语法的深度查询(.) views.py def index(request): name = 'name' lis = [1,2,3,4,5,6] dic = {"name": ...

  10. javascript文档DOC

    python.java都有官网,有官方文档 javascript却找不到官网和官方文档 js大全 https://github.com/jobbole/awesome-javascript-cn md ...