配置spingMVC日期转换器,最近在做一个很老的项目,各种问题不断,于是想重新架构下项目,上次遇到日期前端传到后端转换异常的问题,于是研究了一下,网上一查,各种错误。分享给小伙伴们一下。
我使用的spring版本为3.2.13.
spring配置文件里我这样配置:
<!-- 自定义转换器 --> <bean id="conversionService" class="org.springframework.format.support.FormattingConversionServiceFactoryBean"> <property name="converters"> <list> <bean class="cn.hshb.core.common.DateConverter"></bean> </list> </property> </bean> <!-- 追加日期转化器 --> <mvc:annotation-driven conversion-service="conversionService" />
上面请注意:converters在FormattingConversionServiceFactoryBean中,网上很多代码都错了。
FormattingConversionServiceFactoryBean在spring-core包下。
转换类DateConverter:
package cn.hshb.core.common; /** * 时间日期转换类 * @author Macbook */ import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import org.springframework.core.convert.converter.Converter; public class DateConverter 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"); } 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 + "'"); } } /** * 功能描述:格式化日期 * * @param dateStr String 字符型日期 * @param format String 格式 * @return Date 日期 */ 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; } public static void main(String[] args) { System.err.println(new DateConverter().convert("2014-04-05")); } }
我这里把基本常用的格式都配置进来了。
相关推荐
12. **jackson 或 gson.jar**:JSON 序列化和反序列化的库,用于将 Java 对象转换为 JSON 格式,便于 Web 服务的通信。 13. **hibernate 或 mybatis.jar**:数据库持久化框架,如 Hibernate 用于 ORM(Object-...
- 配置说明:如Spring的配置文件,Jersey的资源配置,以及MVC的拦截器、视图解析等。 - 运行指南:如何启动HTTP服务器,如何发送测试请求,以及查看上传结果的方法。 - 示例请求:提供一个示例POST请求,包括URL...
在配置文件中,通常会看到Spring的applicationContext.xml用于配置Bean,SpringMVC的servlet-context.xml用于配置Web层,以及Mybatis的mybatis-config.xml和对应的Mapper文件。此外,CXF的相关配置可能在wsdd或cxf....
Hibernate允许开发者用面向对象的方式来操作数据库,通过XML或注解配置将Java类映射到数据库表,提供了一种无需编写大量SQL语句的数据库操作方式。它支持CRUD(创建、读取、更新、删除)操作,还具备事务管理和第二...
"环境"可能指的是运行这些服务所需的环境配置,如JDK、Tomcat服务器等,以及ZooKeeper的安装包和配置文件。 总的来说,掌握"Dubbo + ZooKeeper + SpringMVC"的整合使用,对于提升大型分布式系统的构建和管理能力...
- 配置SpringMVC和MyBatis的环境,包括web.xml、spring-context.xml、mybatis-config.xml等配置文件。 - 设计数据库表结构,编写对应的Java实体类。 - 编写Mapper接口和XML映射文件,定义SQL操作。 - 实现...
`Books-Management-System`可能是项目的源代码目录,按照Maven或Gradle等构建工具的标准目录结构组织,包含src/main/java(业务代码)、src/main/resources(配置文件和静态资源)、src/main/webapp(Web应用目录)...
在权限系统中,Spring可以管理如数据库连接、服务接口实现类等对象的生命周期,通过配置或注解方式将它们注入到需要的地方。 - **面向切面编程(Aspect-Oriented Programming,AOP)**:AOP允许我们在不修改业务...
3. **配置 Spring MVC**:在 Spring MVC 的配置文件中,配置 DispatcherServlet 和 HandlerMapping,使 Hessian 服务能够被 MVC 框架识别和处理。 4. **创建 Hessian 客户端**:在需要调用服务的客户端应用中,使用...
前端页面`ztree.jsp`展示了如何设置ZTree的配置和数据。 2. **ZTree配置(Setting)**: 在JavaScript部分,定义了一个名为`setting`的对象,该对象包含了ZTree的数据配置和回调函数。`data.simpleData.enable: ...
eclipse :配置tomcat:http://programmer.ischoolbar.com/index.php/article/article/id/10.html jdk7和jdk8都可以,其他的没试过 tomcat7 MySQL:管理工具:navicat:...
这个jar是很难找的,是dwr在spring环境里面,使用注解的必须包,希望对你有用。
3. 结果映射:自动将查询结果转换为Java对象,支持复杂结果集的映射。 **SpringMVC与Mybatis整合** 整合SpringMVC和Mybatis的关键在于Spring的ApplicationContext容器和Mybatis的SqlSessionFactory。以下是整合...
SpringMVC使用视图解析器(如InternalResourceViewResolver)将视图名称转换为实际的JSP页面。在上述例子中,"form"和"success"是视图名称,对应的可能是"WEB-INF/views/form.jsp"和"WEB-INF/views/success.jsp"。 ...
弹簧靴在该项目中,您可以看到如何在Spring Boot应用程序中配置spring安全性(通过UserDetailsService实现)和thymeleaf模板引擎,以及如何在网页上使用spring security名称空间。
配置MyBatis主要包括创建SqlSessionFactoryBean,定义Mapper接口和XML配置文件。 搭建Spring MVC + MyBatis项目的第一步是设置环境。你需要安装Java SDK、Maven或Gradle(用于构建管理)、Eclipse或IntelliJ IDEA...
使用mysql为数据库,开发框架为srpingMVC+mybatis,前台是jsp
在上面的例子中,我们可以看到,系统使用srpingMvc+spring+mybatis+dubbo的微服务架构,检查日志看到Caused by: java.util.concurrent.RejectedExecutionException: Thread pool is EXHAUSTED!错误信息。 二、解决...
- `spring-context.jar`:提供了应用程序上下文,支持 Bean 的定义、初始化、配置和管理,同时包含事件监听、AOP(面向切面编程)支持等。 - `spring-beans.jar`:负责 Bean 的实例化、配置和管理,是 Spring 框架...
该资源是我参照别人的博客来搭建的环境,myeclipse 10.6+maven3+srping+srpingmvc+hibernate4.1+mysql5.5,博客地址:http://blog.csdn.net/liu1220356497/article/details/47701565,该博客是我转载原来的博客主的,...