SpringMVC中四种日期格式的转换

SpringMVC注册类型转换器(Date格式转化,日期格式转换) 问题: 在前端页面向后台传输数据时,Date数据类型向后台传递出现类型转换异常。不能将Date类型转化成为想要的格式。目前默认支持的是(yyyy/MM/dd)格式,想用其他格式,得自定义一个类型转换器。 1.自定义类型转化器(实现Converter接口) import java.text.ParseException; import java.text.SimpleDateFormat; impo... 阅读详情

首先写一个表单:

<form action="zy/add" method="post">
		添加用户
		姓名:<input name="name"/><br/>
		年龄:<input name="age"/><br/>
		性别:<input name="sex"/><br/>
		地址:<input name="address"/><br/>
		生日:<input name="birthday"/><br/>
	<input type="submit"/>
	</form>

在spring.xml中需要如下配置:

  

	<!-- 扫面controller包 --> 
   	<context:component-scan base-package="com.zy.controller"></context:component-scan>
   	
   	 <!-- 配置日期转换器 -->
    <bean id="formattingConversion" class="org.springframework.format.support.FormattingConversionServiceFactoryBean">
	    <property name="converters">
	      <list>
	      <!-- 配置自己的转换器 -->
	      <bean class="com.zy.converter.MyDateConverter"></bean>
	      </list>
	    </property>
   	</bean>
   	<!-- 引用上文的转换器 -->
   	<mvc:annotation-driven conversion-service="formattingConversion"></mvc:annotation-driven>

在web.xml中需要如下的配置:

<!-- 配置前端控制器 -->
  <servlet>
  <servlet-name>aaa</servlet-name>  
  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
  <!-- 加载配置文件 -->
  	<init-param>
  	<param-name>contextConfigLocation</param-name>
  	<param-value>classpath:spring.xml</param-value><!-- 配置文件的位置 -->
  	</init-param>
  	<load-on-startup>1</load-on-startup><!-- 加载时间,数字越小,加载越早 -->
  </servlet>
  <servlet-mapping>
  <servlet-name>aaa</servlet-name>
  <url-pattern>*.action</url-pattern><!-- 拦截规则 --><!-- 后缀拦截 拦截以action结尾的请求 -->
  </servlet-mapping>
  <!-- /   /*,  /*范围更广,包含jsp的拦截  -->
  
  <filter>
  	<filter-name>bbb</filter-name>
  	<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  <init-param>
  <param-name>encoding</param-name>
  <param-value>utf-8</param-value>
  </init-param>
  
  </filter>
  <filter-mapping>
  <filter-name>bbb</filter-name>
  <url-pattern>/*</url-pattern>
  </filter-mapping>

在controller中写如下方法:

@RequestMapping("/add")
	public ModelAndView add(User uu) {  
		//该对象会自动接收表单中与属性名匹配的值  对象接收参数
		System.out.println(uu);
		return null;
	}

日期转换类:

package com.zy.converter;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.springframework.core.convert.converter.Converter;
//从字符串转日期
public class MyDateConverter implements Converter<String, Date>{

	@Override
	public Date convert(String value) {  //参数就是传入的字符串日期
		// 1999年6月6日  创建相对应的日期格式化对象
		SimpleDateFormat simpleDateFormat = null;
		/*String str = value.substring(4, 5);
		switch (str) {
		case "年":
			simpleDateFormat = new SimpleDateFormat("yyyy年mm月dd日");
			break;
		case ".":
			simpleDateFormat = new SimpleDateFormat("yyyy.mm.dd");
			break;
		case "-":
			simpleDateFormat = new SimpleDateFormat("yyyy-mm-dd");
			break;
		default:
			simpleDateFormat = new SimpleDateFormat("yyyy/mm/dd");
			break;
		}*/
		
		if (value.contains("年")) {
			simpleDateFormat = new SimpleDateFormat("yyyy年mm月dd日");
		} 
		else if (value.contains(".")) {
			simpleDateFormat = new SimpleDateFormat("yyyy.mm.dd");
		}
		else if (value.contains("-")) {
			simpleDateFormat = new SimpleDateFormat("yyyy-mm-dd");
		}
		else if (value.contains("/")) {
			simpleDateFormat = new SimpleDateFormat("yyyy/mm/dd");
		}
		//解析
		try {
			//把字符串解析成一个日期对象
			Date parse = simpleDateFormat.parse(value);
			//返回结果
			return parse;
		} catch (ParseException e) {
			e.printStackTrace();
		}
		return null;
	}

}

 

 

SpringMVC4.1+FastJson 自定义日期转换器 摘要: SpringMVC+FastJson组合的时候输出Date日期的时候默认是输出时间戳,对于有的时候要输出日期格式为yyyy-MM-dd,而有的时候要输出yyyy-MM-dd hh:mm:ss时怎么办? 对于有的时候要输出日期格式为yyyy-MM-dd,而有的时候要输出yyyy-MM-dd hh:mm:ss时怎么办? 第一种方案:纯注解式, 对日期类型的字段进行注解 @JS 阅读详情

相关推荐

SpringMVC中日期格式的转换

本文主要介绍了SpringMVC中日期格式转换的相关知识:用来解决日期提交转换异常的问题。具有很好的参考价值。下面跟着小编一起来看下吧

springMVC中的日期格式的转化

一、jsp页面传递到controller的日期如果实体类中封装的日期类型为Date,而jsp页面中的传来的为string类型,这个时候后台就会报错,出现400错误,原因是前后端的数据类型...

mytimelife的博客 365

智能车轮腿组‘定点排雷’科目全解析:从雷区识别到姿态控制

本文深入解析了智能车竞赛轮腿穿越组‘定点排雷’科目的核心技术。从构建鲁棒的视觉识别系统,到融合编码器与IMU进行厘米级定位,再到实现框内高精度旋转的姿态控制,提供了一套完整的从感知到执行的闭环技术方案,助力参赛队伍攻克这一高难度科目。

weixin_29161719的博客 640

SpringMVC框架学习(二)——日期格式处理、异常处理

SpringMVC框架的日期格式处理、异常处理以及中文乱码问题

ifhuke的博客 701

Palantir解密:说人话,到底什么是“本体”?

笔者2018年在云计算公司开展政企数字化专项时,便意识到全面数字化进程背后存在大量未知领域,尤其是未来数字世界的底层架构如何构建这一关键问题。可惜因为种种原因,连那几个小专项最终都未能落地,也就无从深入了。近期看了很多有关Palantir的材料,倒觉得这像是新硅谷(区别于比尔盖茨、扎克伯格等主导的硅谷时代)交出的一份关于“数字世界底层架构”的答案,至于这个答案是否成立、有没有更优解、我们本土对标的版本是什么,可能都还待看。《Palantir解密》系列尝试通过解析Palantir,来系统回答这一问题。

SZSDQJC的博客 2154

雪莉果的Axure原型工厂vol.006 中继器应用(二)——多选穿梭框

如果你用axure有一段时间了,那么你很快就能琢磨出一个大体设计流程,比如加一个中间过度的元件,来储存需要穿梭的内容;但是如果你再想一想,就会发现,这样做,似乎只能解决单选,那么多选需要怎么操作呢? 这时候,中继器就会告诉你,我还能做的更多。

weixin_43829792的博客 976

SpringMVC 四种方法解决表单到后台的日期类型转换

        基本上所有的注册页面都有出生日期一栏,所对应的pojo都应该有一个java.util.Date类型的,名为birth的属性.  那么问题来了, 请求只能传递字符串, 如果不作处理, 会出现"HTTP Status 400 – Bad Request"的错误, 并且报错信息也只有令人匪夷所思的一行英文, 后台更是一点反应都没.    有问题出现当然就有解决的办法, 并且有时候还不止一...

↓ ↓ ↓ ↓ 4581

从CD4051到现代模拟开关:40年芯片演进史与选型避坑指南

本文回顾了从CD4051到现代模拟开关的40年技术演进,详细对比了导通电阻、带宽等关键参数的显著提升。通过实际案例和选型矩阵,揭示现代模拟开关在精度、功耗和集成度方面的优势,并提供高精度测量、电池供电等场景的选型策略与避坑指南,帮助工程师优化设计。

weixin_42543046的博客 153

在使用springMVC时,页面显示时间为时间戳,如何显示标准的中国时间呢?

在使用springMVC时,页面显示时间为时间戳,如何显示标准的中国时间呢? springmvc在处理后台数据时,默认使用json格式,把Date类型的数据转换成了时间戳。 解决: 只需在实体类中使用@JsonFormat注解即可,它位于jackson-core-2.1.0.jar的包中。 ...

dongzhanglong的博客 504

从“要啥”到“咋测”:手把手拆解Aspice SWE.1需求分析,为你的车载/嵌入式项目避坑

本文深入解析Aspice SWE.1需求分析在车载/嵌入式项目中的关键作用,帮助开发者将模糊的系统需求转化为可执行、可验证的软件需求。通过实战案例和结构化方法,详细拆解功能需求原子化、非功能需求工程化表达等核心技巧,为项目避坑提供实用指南。

weixin_31682031的博客 257

lammps后处理:ovito选择原子高级技巧讲解

大家好,我是小马老师。 本文介绍如何在ovito中使用公式(Expression)选择需要的原子。 用ovito查看lammps模拟结果时,可能会遇到选择特定原子的情况,比如选择坐标位于一定范围内的原子,或者选择结构为fcc的原子等等。 这时候,就需要用到expression selection功能。 Expression selection功能比较强大,下面分别介绍几种选择原子的方法。 在输入公式前,先点击“Add modification”->"Expression selection"选项,在B

lammps_jiayou的博客 2万+

全局时间转换器

一.当配置文件中有  http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd xmlns:mvc="http://www.springframework.org/schema/mvc 时: 1.web.xml <beans xmlns

aoaoxiaoxian的博客 534

DRV8711驱动器的各寄存器的介绍

drv8711驱动器

PCLintelligence的博客 1634

Spring Boot实践--前端字符串日期自动转换成后台date类型

此文是转载,原文地址 :https://my.oschina.net/spinachgit/blog/1806459 如果闲看的麻烦,请直接跳到第四个方法 简单介绍 在前后台开发的时候:日期格式会转来转去,很麻烦。大致总结如下: 1:后端返回对象:可以使用spring提供的:HttpMessageConverter来自动转换,有很多实现。 比如:AbstractJackson2HttpMessa...

辰霄丶的博客 3987

[HBM] RAM Cell Self Repair | 内存单元自我修复

对抗错误的大都是冗余,内存颗粒在设计的时候也考虑增加冗余。具体的说:添加冗余或备用的存储单元行和列,及时将测试中的故障进行修复和替换,存储器修复包括行修复,列修复或两者的组合。

串起点滴 783

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

springmvc中日期转换(fastjason)

对于有的时候要输出日期格式为yyyy-MM-dd,而有的时候要输出yyyy-MM-dd hh:mm:ss时怎么办? 第一种方案:纯注解式, 对日期类型的字段进行注解 @JSONField(format = "yyyy-MM-dd") private Date updateDate; @JSONField(format = "yyyy-MM-dd hh:mm:ss") private Dat...

Xhm1064的博客 426

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

SpringMvc接收日期表单提交,自动转换成Date类型方法

User中有birthday(Date)属性,用户注册的时候,选择日期即可,然后提交表单,可spring mvc 报错,400 Bad Request意思是不能把字符串转为Date类型的。 实体类中加日期格式化注解     @DateTimeFormat(pattern = "yyyy-MM-dd")       private Date birthday;   控制器Controller中...

王明晓的博客 2122

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

SpringMVC日期类型转换问题三大处理方法归纳

方法一:实体类中加日期格式化注解   @DateTimeFormat(pattern = "yyyy-MM-dd") private Date receiveAppTime; 如上,在对应的属性上,加上指定日期格式的注解,本人亲自测试过,轻松解决问题!   方法二:控制器Action中加入一段数据绑定代码   @InitBinder public...

爱诺情缘的博客 183

SpringMVC+MyBatis 返回时间格式转换解决方案

Mybatis中可以使用  DATE_FORMAT(datetime,'%Y-%m-%d %H:%i:%s')函数状态当然方法一:使用@JsonFormat注解,将它配置到Date类型的get方法上,jackson就会按照配置的格式转换日期类型@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")  //@JsonFormat(pattern="yyyy-MM...

xiao雷博客 2万+

SpringMvc几种数据转化方法

SpringMvc几种数据转化 1 使用DateTimeFormat @DateTimeFormat(pattern = "yyyy-MM-dd") private Date birthday; 2 使用InitBinder @InitBinder("user") public void dateBinder(WebDataBinder dataBinder){ data...

qq_29860591的博客 341

SpringMVC+FastJson 自定义日期转换器

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34237596的博客 295

SpringMVC中在使用@ResponseBody时如何将Date类型的日期返回指定格式的json数据

hello,我的小可爱们,前天去参加了人生第一次比较正式的面试,总体还算比较顺利,今天就已经拿到了offer,心里还是蛮开心的,但我深刻的知道,作为一个非计算机专业出身的我还有更长的路要走,我还是要拿出十二分的努力去学习,去快速成长,在这里给自己定一个目标,明年真正毕业前,努力让自己的能力成长到可以达到月薪过万的水准。好了,废话不多说,开始今天的分享。 同样最近在做项目的过程中,发现实体类中

liuyang_520的博客 7605

格式化日期:

法一: 法二: cn.hp.utils下的 DateUtil类: public class DateUtils { public static String dateToString(Date date){ if(date!=null){ SimpleDateFormat sdf = new SimpleDateFormat("yyyy:MM:dd HH:mm:ss"); String string = sdf.format(dat

zhu_kai_ge的博客 206

json传递Date类型数据报400错误

spring mvc 在接收日期类型参数时,如不做特殊处理 会出现400语法格式错误 解决办法: 方法一:实体类中加日期格式化注解 @DateTimeFormat(pattern = "yyyy-MM-dd") private Date releasetime; 方法二:控制器Action中加入一段数据绑定代码 @InitBinder   public void in...

Bruce_Json的博客 1625

【SSM - SpringMVC篇】06 - SpringMVC转换器,日期格式转换器,后台Date转json,前台json转Date

文章目录SpringMVC日期Date格式转换1. 通过注解`@DateTimeForma()`实现日期格式转换。【 *** 推荐使用】2. 编写自定义转换器实现`Converter`,通过重写方法进行类型转换。2.1 编写自定义转换器实现`Converter`2.2 springmvc.xml中配置转换工厂,将转换器设置到converters集合中3. 将转换工厂对象挂载到处理器适配器上(挂载到注解驱动) SpringMVC日期Date格式转换   springMVC默认不支持页面上的日期字符串到后台的D

Java小皮孩 2万+

SpringMVC中日期格式的转换问题

SpringMVC中日期格式的转换问题 1.前端传某一种日期格式的数据,后端如何接收? 前端传日期类的格式,后端该如何处理?以及前端传多种日期格式的数据,后端又如何处理?? 下面会测试yyyy年MM月dd日、yyyy/MM/dd、yyyy-MM-dd等日期格式的数据,以及get方式和post方式传yyyy年MM月dd日的区别 1.2前端传yyyy-MM-dd日期格式 1.2.1、前端代码: <form action="/date.action"> 时间:<input typ

weixin_47084857的博客 657
上一篇: 使用MapReduce统计每一个用户的使用总流量
下一篇: springMVC文件上传与下载
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值