前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >spring mvc 时间日期转换(@DateTimeFormat 注解)

spring mvc 时间日期转换(@DateTimeFormat 注解)

作者头像
yawn
发布2018-03-14 11:24:26
3.2K0
发布2018-03-14 11:24:26
举报

两种用法示例:

代码语言:javascript
复制
    @GetMapping("/date")
	public String datest(@DateTimeFormat(iso=ISO.DATE) Date date){
		System.out.println(date);
		return "lalalal";
	}
代码语言:javascript
复制
    @GetMapping("/date")
	public String datest(@DateTimeFormat(pattern = "yyyy/MM/dd") Date date){
		System.out.println(date);
		return "lalalal";
	}

使用 @DateTimeFormat 注解有两种做法,如上面代码所示。

示例说明:

第一种是按照ISO国际标准的日期时间格式解析参数中的日期时间的,具体格式为此枚举变量:

代码语言:javascript
复制
	/**
	 * Common ISO date time format patterns.
	 */
	enum ISO {

		/**
		 * The most common ISO Date Format {@code yyyy-MM-dd},
		 * e.g. "2000-10-31".
		 */
		DATE,

		/**
		 * The most common ISO Time Format {@code HH:mm:ss.SSSZ},
		 * e.g. "01:30:00.000-05:00".
		 */
		TIME,

		/**
		 * The most common ISO DateTime Format {@code yyyy-MM-dd'T'HH:mm:ss.SSSZ},
		 * e.g. "2000-10-31T01:30:00.000-05:00".
		 * <p>This is the default if no annotation value is specified.
		 */
		DATE_TIME,

		/**
		 * Indicates that no ISO-based format pattern should be applied.
		 */
		NONE
	}

第二种是按照自定义的模式来解析时间,模式字符串的定义与遵循以下规则(摘自jdk 1.8 SimpleDateFormat):

  • The following pattern letters are defined (all other characters from 'A' to 'Z' and from 'a' to 'z' are reserved):
  • The following examples show how date and time patterns are interpreted in the U.S. locale. The given date and time are 2001-07-04 12:08:56 local time in the U.S. Pacific Time time zone.

其他补充:

@ExceptionHandler 异常处理:

代码语言:javascript
复制
	@ExceptionHandler(Exception.class)
	public String handle(Exception exception){
		if (exception instanceof MethodArgumentTypeMismatchException) {
			return "传入参数格式不正确或参数解析异常!";
		}
		return exception.getMessage();
	}

如上所示,利用此注解@ExceptionHandler就可以实现对异常的处理。

若此示例代码段放在@Controller类中,就只可以处理它所在类被请求过程中发生的异常。如果需要处理多个@Controller类被请求过程中发生的异常,就需要将此代码段放在单独的一个类中,并且这个类需要加上@ControllerAdvice(或@RestControllerAdvice)注解。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 两种用法示例:
  • 示例说明:
  • 其他补充:
    • @ExceptionHandler 异常处理:
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档