这里面我们简单的学习一下springboot中关于数据格式化的使用。我以为你不是个好人,没想到你连个坏人都不是。
springboot中的格式化
我们的测试环境是springboot,一个将字符串格式化成时间的例子。代码结构如下:
一、定义我们的字符串格式化器
package com.linux.huhx.learn.format; import org.springframework.format.Formatter; import org.springframework.stereotype.Component; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; /** * @Author: huhx * @Date: 2017-12-15 下午 4:16 * @Desc: formatter的学习 */ @Component public class DateFormatter implements Formatter<Date> { private SimpleDateFormat dateFormat; @Override public Date parse(String text, Locale locale) throws ParseException { System.out.println("parse input text: " + text); System.out.println("parse date: " + dateFormat.parse(text)); return dateFormat.parse(text); } public DateFormatter() { dateFormat = new SimpleDateFormat("yyyyMMddHHmmss"); dateFormat.setLenient(false); } @Override public String print(Date object, Locale locale) { System.out.println("print method." + object); return dateFormat.format(object); } }
二、我们的测试控制器类
package com.linux.huhx.learn.format; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.Date; /** * @Author: huhx * @Date: 2017-12-15 下午 4:24 */ @RestController @RequestMapping("/formatter") public class DateFormatterAction { @PostMapping("/date") public Date formatterStringToDate(Date date) { System.out.println("action method: " + date.toString()); return date; } }
使用postman发送post请求:http://localhost:9998/formatter/date。
返回的数据:以下的时间戳是spring经过转换生成的
1513311132000
控制台打印数据:
parse input text: 20171215121212 parse date: Fri Dec 15 12:12:12 CST 2017 action method: Fri Dec 15 12:12:12 CST 2017