-
javascript Date format(js日期格式化)
2010-06-02 19:04:00这个很不错,好像是 csdn 的 Meizz 写的: // 对Date的扩展,将 Date 转化为指定格式的String // 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符, // 年(y)可以用 1-4 个占位符,毫秒(S)只能用...方法一:这个很不错,好像是 csdn 的 Meizz 写的:
// 对Date的扩展,将 Date 转化为指定格式的String // 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符, // 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字) // 例子: // (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423 // (new Date()).Format("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18 Date.prototype.Format = function(fmt) { //author: meizz var o = { "M+" : this.getMonth()+1, //月份 "d+" : this.getDate(), //日 "h+" : this.getHours(), //小时 "m+" : this.getMinutes(), //分 "s+" : this.getSeconds(), //秒 "q+" : Math.floor((this.getMonth()+3)/3), //季度 "S" : this.getMilliseconds() //毫秒 }; if(/(y+)/.test(fmt)) fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length)); for(var k in o) if(new RegExp("("+ k +")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length))); return fmt; }调用方法:
var time1 = new Date().format("yyyy-MM-dd HH:mm:ss"); var time2 = new Date().format("yyyy-MM-dd");
方法二:
<mce:script language="javascript" type="text/javascript"><!-- /** * 对Date的扩展,将 Date 转化为指定格式的String * 月(M)、日(d)、12小时(h)、24小时(H)、分(m)、秒(s)、周(E)、季度(q) 可以用 1-2 个占位符 * 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字) * eg: * (new Date()).pattern("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423 * (new Date()).pattern("yyyy-MM-dd E HH:mm:ss") ==> 2009-03-10 二 20:09:04 * (new Date()).pattern("yyyy-MM-dd EE hh:mm:ss") ==> 2009-03-10 周二 08:09:04 * (new Date()).pattern("yyyy-MM-dd EEE hh:mm:ss") ==> 2009-03-10 星期二 08:09:04 * (new Date()).pattern("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18 */ Date.prototype.pattern=function(fmt) { var o = { "M+" : this.getMonth()+1, //月份 "d+" : this.getDate(), //日 "h+" : this.getHours()%12 == 0 ? 12 : this.getHours()%12, //小时 "H+" : this.getHours(), //小时 "m+" : this.getMinutes(), //分 "s+" : this.getSeconds(), //秒 "q+" : Math.floor((this.getMonth()+3)/3), //季度 "S" : this.getMilliseconds() //毫秒 }; var week = { "0" : "/u65e5", "1" : "/u4e00", "2" : "/u4e8c", "3" : "/u4e09", "4" : "/u56db", "5" : "/u4e94", "6" : "/u516d" }; if(/(y+)/.test(fmt)){ fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length)); } if(/(E+)/.test(fmt)){ fmt=fmt.replace(RegExp.$1, ((RegExp.$1.length>1) ? (RegExp.$1.length>2 ? "/u661f/u671f" : "/u5468") : "")+week[this.getDay()+""]); } for(var k in o){ if(new RegExp("("+ k +")").test(fmt)){ fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length))); } } return fmt; } var date = new Date(); window.alert(date.pattern("yyyy-MM-dd hh:mm:ss")); // --></mce:script>
方法三:
Date.prototype.format = function(mask) { var d = this; var zeroize = function (value, length) { if (!length) length = 2; value = String(value); for (var i = 0, zeros = ''; i < (length - value.length); i++) { zeros += '0'; } return zeros + value; }; return mask.replace(/"[^"]*"|'[^']*'|/b(?:d{1,4}|m{1,4}|yy(?:yy)?|([hHMstT])/1?|[lLZ])/b/g, function($0) { switch($0) { case 'd': return d.getDate(); case 'dd': return zeroize(d.getDate()); case 'ddd': return ['Sun','Mon','Tue','Wed','Thr','Fri','Sat'][d.getDay()]; case 'dddd': return ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'][d.getDay()]; case 'M': return d.getMonth() + 1; case 'MM': return zeroize(d.getMonth() + 1); case 'MMM': return ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'][d.getMonth()]; case 'MMMM': return ['January','February','March','April','May','June','July','August','September','October','November','December'][d.getMonth()]; case 'yy': return String(d.getFullYear()).substr(2); case 'yyyy': return d.getFullYear(); case 'h': return d.getHours() % 12 || 12; case 'hh': return zeroize(d.getHours() % 12 || 12); case 'H': return d.getHours(); case 'HH': return zeroize(d.getHours()); case 'm': return d.getMinutes(); case 'mm': return zeroize(d.getMinutes()); case 's': return d.getSeconds(); case 'ss': return zeroize(d.getSeconds()); case 'l': return zeroize(d.getMilliseconds(), 3); case 'L': var m = d.getMilliseconds(); if (m > 99) m = Math.round(m / 10); return zeroize(m); case 'tt': return d.getHours() < 12 ? 'am' : 'pm'; case 'TT': return d.getHours() < 12 ? 'AM' : 'PM'; case 'Z': return d.toUTCString().match(/[A-Z]+$/); // Return quoted strings with the surrounding quotes removed default: return $0.substr(1, $0.length - 2); } }); };
-
new Date() 日期格式处理
2017-12-25 16:09:16console.log("result:"+toHDate(new Date().getTime()/1000).replace(/\:\d\d$/,'')); function toHDate(sec) { var d=new Date(); d.setTime(parseInt(sec)*1000); var str=d.getFullYear()+"-"+numFormDate 对象常用API
var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); //获取完整的年份(4位,1970-????) myDate.getMonth(); //获取当前月份(0-11,0代表1月) 所以获取当前月份是 myDate.getMonth()+1; myDate.getDate(); //获取当前日(1-31) myDate.getDay(); //获取当前星期X(0-6,0代表星期天) myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数) myDate.getHours(); //获取当前小时数(0-23) myDate.getMinutes(); //获取当前分钟数(0-59) myDate.getSeconds(); //获取当前秒数(0-59) myDate.getMilliseconds(); //获取当前毫秒数(0-999) myDate.toLocaleDateString(); //获取当前日期 var mytime = myDate.toLocaleTimeString(); //获取当前时间 myDate.toLocaleString( ); //获取日期与时间
JS获取当前时间戳的方法:
Date.parse(new Date()); // 不推荐; 毫秒改成了000显示 new Date().valueOf(); new Date().getTime(); +new Date().getTime();
js中单独调用
new Date();
显示这种格式Fri Aug 28 2020 11:03:24 GMT+0800 (中国标准时间)
但是用new Date()
参与计算会自动转换为从 1970.1.1 开始的毫秒数将字符串形式的日期转换成日期对象:
var strTime="2011-04-16"; // 字符串日期格式 var date= new Date(Date.parse(strTime.replace(/-/g, "/"))); // 转换成 Data(); new Date(); // 参数可以为整数; 也可以为字符串; 但格式必须正确 new Date(2009,1,1); new Date("2009/1/1"); new Date("2009-1-1"); new Date( year, month, date, hrs, min, sec) // 按给定的参数创建一日期对象
1.日期格式转为日期标准字符串:2015-03-19
var formatDate = function (date) { var y = date.getFullYear(); var m = date.getMonth() + 1; m = m < 10 ? '0' + m : m; var d = date.getDate(); d = d < 10 ? ('0' + d) : d; return y + '-' + m + '-' + d; };
2.js方法返回值:2015-03-19 12:00:00
var formatDateTime = function (date) { var y = date.getFullYear(); var m = date.getMonth() + 1; m = m < 10 ? ('0' + m) : m; var d = date.getDate(); d = d < 10 ? ('0' + d) : d; var h = date.getHours(); h=h < 10 ? ('0' + h) : h; var minute = date.getMinutes(); minute = minute < 10 ? ('0' + minute) : minute; var second=date.getSeconds(); second=second < 10 ? ('0' + second) : second; return y + '-' + m + '-' + d+' '+h+':'+minute+':'+second; };
3.时间戳转为日期格式
//时间戳转日期格式 var formatDateTime3 = function(time, format){ var t = new Date(time); var tf = function(i){return (i < 10 ? '0' : '') + i}; return format.replace(/yyyy|MM|dd|HH|mm|ss/g, function(a){ switch(a){ case 'yyyy': return tf(t.getFullYear()); break; case 'MM': return tf(t.getMonth() + 1); break; case 'mm': return tf(t.getMinutes()); break; case 'dd': return tf(t.getDate()); break; case 'HH': return tf(t.getHours()); break; case 'ss': return tf(t.getSeconds()); break; } }) };
4.时间格式字符串转为时间戳(毫秒)
var time1=‘2016-01-01 17:22:37’; var date=new Date(time1.replace(/-/g, '/')); //开始时间 var time2=date.getTime();
如何将2015-03-12 12:00 转换成标准时间()?
// 调用:parserDate("2015-03-19 12::00:00") var parserDate = function (date) { var t = Date.parse(date); if (!isNaN(t)) { return new Date(Date.parse(date.replace(/-/g, "/"))); } else { return new Date(); } };
转自不忘初心:http://blog.csdn.net/tomcat_2014/article/details/50514979
补充:
写一个vue plugin 用于格式化日期时间:export function prefixZero (num, n) { return (Array(n).join(0) + num).slice(-n); } /** * @param {String | Number} date 当前时间 * @param {String} format 格式化格式 * * usage: * dateFormatter('2011/1/12 12:12:22', 'yyyy-MM-dd HH:mm:ss') * dateFormatter(1294805542000, 'yyyy-MM-dd HH:mm:ss') */ export function dateFormatter (date, format) { const t = new Date(date) console.log(t) if (t.toString() === 'Invalid Date') { return 'invalid date' } return format.replace(/yyyy|MM|M|WW|W|ww|w|dd|d|HH|H|hh|h|mm|m|ss|s|A|a/g, function(a){ switch(a){ case 'yyyy': // 年 2011 return prefixZero(t.getFullYear(), 4); case 'MM': // 月 01 return prefixZero(t.getMonth() + 1, 2); case 'M': // 月 1 return t.getMonth() + 1; case 'WW': // 周 01 return prefixZero(t.getDay(), 2); case 'W': // 周 1 return t.getDay(); case 'ww': // 周 星期一 return "星期" + "日一二三四五六".charAt(t.getDay()); case 'w': // 周 周一 return "周" + "日一二三四五六".charAt(t.getDay()); case 'dd': // 日 02 return prefixZero(t.getDate(), 2); case 'd': // 日 2 return prefixZero(t.getDate(), 2); case 'HH': // 小时 24小时制 03 return prefixZero(t.getHours(), 2); case 'H': // 小时 24小时制 3 return prefixZero(t.getHours(), 2); case 'hh': // 小时 12小时制 03 return prefixZero(t.getHours() % 12, 2); case 'h': // 小时 12小时制 3 return prefixZero(t.getHours() % 12, 2); case 'mm': // 分钟 04 return prefixZero(t.getMinutes(), 2); case 'm': // 分钟 4 return t.getMinutes(); case 'ss': // 秒 05 return prefixZero(t.getSeconds(), 2); case 's': // 秒 5 return t.getSeconds(); case 'A': return t.getHours() < 12 ? 'AM' : 'PM'; case 'a': return t.getHours() < 12 ? 'am' : 'pm'; } }) } const dateFormat = { install: function (vue) { vue.prototype.$dateFormatter = dateFormatter vue.filter('date', dateFormatter) } } export default dateFormat
-
java 日期格式化-- SimpleDateFormat 的使用。字符串转日期,日期转字符串
2016-11-04 14:38:26日期和时间格式由 日期和时间模式字符串 指定。在 日期和时间模式字符串 中,未加引号的字母 'A' 到 'Z' 和 'a' 到 'z' 被解释为模式字母,用来表示日期或时间字符串元素。文本可以使用单引号 (') 引起来,以免进行...日期和时间格式由 日期和时间模式字符串 指定。在 日期和时间模式字符串 中,未加引号的字母 'A' 到 'Z' 和 'a' 到 'z' 被解释为模式字母,用来表示日期或时间字符串元素。文本可以使用单引号 (') 引起来,以免进行解释。所有其他字符均不解释;只是在格式化时将它们简单复制到输出字符串
白话文的讲:这些A——Z,a——z这些字母(不被单引号包围的)会被特殊处理替换为对应的日期时间,其他的字符串还是原样输出。日期和时间模式(注意大小写,代表的含义是不同的)
yyyy:年 MM:月 dd:日 hh:1~12小时制(1-12) HH:24小时制(0-23) mm:分 ss:秒 S:毫秒 E:星期几 D:一年中的第几天 F:一月中的第几个星期(会把这个月总共过的天数除以7) w:一年中的第几个星期 W:一月中的第几星期(会根据实际情况来算) a:上下午标识 k:和HH差不多,表示一天24小时制(1-24)。 K:和hh差不多,表示一天12小时制(0-11)。 z:表示时区
(2017-12-28日,更新)
因为看到了Java 8 里面对日期的格式化操作的API,回头又看了看这个以前的日期格式化。发现,文中的实例不是很全面。不符合湿胸的性格,特地来完善一下。
private static void formatDataTest() { /* * 日期转期望格式的字符串 */ //HH 和 hh 的差别:前者是24小时制,后者是12小时制。 StringBuilder sb = new StringBuilder(); sb.append("yyyy年MM月dd日 HH:mm:ss") .append(" 上下午标志 a") .append(" E") .append(" 一年中的第D天") .append(" 一月中的第F个星期") .append(" 一年中的第w个星期") .append(" 一月中的第W个星期") .append(" Z") .append(" z"); SimpleDateFormat sdf = new SimpleDateFormat(sb.toString()); String dateString = sdf.format(new Date()); System.out.println(dateString); /* * 字符串转日期 */ Date date; try { date = sdf.parse(dateString); System.out.println(date); } catch (ParseException e) { System.out.println(e.getMessage()); } }
运行结果:
2017年12月28日 18:21:731 上下午标志 下午 星期四 一年中的第362天 一月中的第4个星期 一年中的第52个星期 一月中的第5个星期 +0800 CST
Thu Dec 28 18:21:00 CST 2017这里多说一句,一个月中的第几个星期, F 这个出来的结果,不靠谱,具体我就在这多做测试啦,我是测试过,才这么说的,还是后面的那个 W 靠谱。
(更新完成)
具体简单常见的实例:
package com.lxk.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; /** * Created by lxk on 2016/11/4 */ public class Format { public static void main(String[] args) { Date ss = new Date(); System.out.println("一般日期输出:" + ss); System.out.println("时间戳:" + ss.getTime()); //Date aw = Calendar.getInstance().getTime();//获得时间的另一种方式,测试效果一样 SimpleDateFormat format0 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String time = format0.format(ss.getTime());//这个就是把时间戳经过处理得到期望格式的时间 System.out.println("格式化结果0:" + time); SimpleDateFormat format1 = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒"); time = format1.format(ss.getTime()); System.out.println("格式化结果1:" + time); } }
测试结果图:
需要什么格式,自己拼好字符串,就可以格式化日期啦。授人以渔呀有木有。
喷子们要是觉得简单呢,就省省唾沫星子吧。我就记个笔记用。
上面的是:日期转自己想要的字符串格式,下面是字符串转日期类型。
private static void testStringToDate() { String s = "2017-05-25"; SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); Date date = null; try { date = format.parse(s); } catch (ParseException e) { System.out.println(e.getMessage()); } System.out.println(date); }
下面是运行的debug截图。
上面的那个 日期和时间模式 是按我们常用的年月日时分秒来放的,下面传个别人的专业的图,供参考。
定义了以下模式字母(所有其他字符 'A' 到 'Z' 和 'a' 到 'z' 都被保留):
我写完文章,给自己点个赞,不过分吧,
不过分,那我可就点啦啊。
我先点为敬,你们随意。大家随意。不要客气。。。 -
SpringBoot日期格式转换,SpringBoot配置全局日期格式转换器
2020-12-04 12:31:10SpringBoot设置后台向前台传递Date日期格式 在springboot应用中,@RestController注解的json默认序列化中,日期格式默认为:2020-12-03T15:12:26.000+00:00类型的显示。 在实际显示中,我们需要对其转换成我们需要...文章目录
1. SpringBoot设置后台向前台传递Date日期格式
在springboot应用中,
@RestController
注解的json默认序列化中,日期格式默认为:2020-12-03T15:12:26.000+00:00
类型的显示。
在实际显示中,我们需要对其转换成我们需要的显示格式。1.1 方式1:配置文件修改
配置文件配置
application.yml
:spring: # 配置日期格式化 jackson: date-format: yyyy-MM-dd HH:mm:ss #时间戳统一转换为指定格式 time-zone: GMT+8 # 时区修改为东8区
application.properties
配置方式spring.jackson.date-format=yyyy-MM-dd HH:mm:ss #时间戳统一转换为指定格式 spring.jackson.time-zone=GMT+8 # 时区修改为东8区
【注意】这里需要修改时区
time-zone
:数据库默认时区是格林尼治的时间,如果不设置,会比实际时间少8个小时(北京时间)。1.2 方式2:在javabean实体类上加注解
I.
@JsonFormat
注解@JsonFormat
注解用于属性或方法上,将Date
类型转换为我们需要的类型显示。//在pattern上设置自己需要的格式 @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date createTime;
II.
@DateTimeFormat
注解在需要进行日期格式转换的Date属性上添加注解
@DateTimeFormat(pattern = "需要转换的格式")
//注解将yyyy-MM-dd的形式转换为Date数据 @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date birthday;
III.
@Temporal
注解通过
@Temporal
注解,实现日期格式转换,它自带属性参数,比如:@Temporal注解参数 作用 TemporalType.DATE @Temporal(TemporalType.DATE)
,会得到yyyy-MM-dd
格式的日期形式。TemporalType.TIME @Temporal(TemporalType.TIME)
,会得到HH:MM:SS
格式的时间形式。TemporalType.TIMESTAMP @Temporal(TemporalType.TIMESTAMP)
,会得到yyyy-MM-dd hh:MM:ss
格式的日期时间形式。@Temporal(TemporalType.TIMESTAMP) private Date createTime;
2. SpringBoot配置全局日期格式转换器
配置从页面接收的String和json格式的日期转换为Date类型。
2.1 配置String类型表单传参转Date的转换器
import org.springframework.core.convert.converter.Converter; import org.springframework.stereotype.Component; import org.springframework.util.StringUtils; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; //Converter<S,T> S: 代表的是源,将要转换的数据类型 T:目标类型,将会转成什么数据类型 @Component public class GlobalFormDateConvert implements Converter<String, Date> { //静态初始化定义日期字符串参数列表(需要转换的) private static final List<String> paramList = new ArrayList<>(); //静态初始化可能初夏你的日期格式 private static final String param1 = "yyyy-MM"; private static final String param2 = "yyyy-MM-dd"; private static final String param3 = "yyyy-MM-dd HH:mm"; private static final String param4 = "yyyy-MM-dd HH:mm:ss"; //静态代码块,将日期参数加入到列表中 static { paramList.add(param1); paramList.add(param2); paramList.add(param3); paramList.add(param4); } //自定义函数,将字符串转Date 参1:传入的日期字符串 参2:格式参数 public Date parseDate(String source, String format) { System.out.println("parseDate转换日期"); Date date = null; try { //日期格式转换器 DateFormat dateFormat = new SimpleDateFormat(format); date = dateFormat.parse(source); } catch (Exception e) { e.printStackTrace(); } return date; } //convert转换方法 ,s是将会传递过来的日期的字符串 @Override public Date convert(String source) { System.out.println("convert日期格式转换器"); if(StringUtils.isEmpty(source)){ return null; } source = source.trim(); //去除首尾空格 DateFormat dateFormat = new SimpleDateFormat(param1); //正则表达式判断是哪一种格式参数 if (source.matches("^\\d{4}-\\d{1,2}$")) { return parseDate(source, paramList.get(0)); } else if (source.matches("^\\d{4}-\\d{1,2}-\\d{1,2}$")) { return parseDate(source, paramList.get(1)); } else if (source.matches("^\\d{4}-\\d{1,2}-\\d{1,2} {1}\\d{1,2}:\\d{1,2}$")) { return parseDate(source, paramList.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, paramList.get(3)); } else { throw new IllegalArgumentException("还未定义该种字符串转Date的日期转换格式 --> 【日期格式】:" + source); } } }
2.2 配置Json数据转Date的全局日期转换器
import java.text.FieldPosition; import java.text.ParsePosition; import java.text.SimpleDateFormat; import java.util.Date; import com.fasterxml.jackson.databind.util.StdDateFormat; import org.springframework.util.StringUtils; public class GlobalJsonDateConvert extends StdDateFormat { //静态初始化final,共享 public static final GlobalJsonDateConvert instance = new GlobalJsonDateConvert(); //覆盖parse(String)这个方法即可实现 @Override public Date parse(String dateStr, ParsePosition pos) { return getDate(dateStr, pos); } @Override public Date parse(String dateStr) { ParsePosition pos = new ParsePosition(0); return getDate(dateStr, pos); } private Date getDate(String dateStr, ParsePosition pos) { System.out.println("json格式日期转换"); SimpleDateFormat sdf = null; if (StringUtils.isEmpty(dateStr)) { return null; } else if (dateStr.matches("^\\d{4}-\\d{1,2}$")) { sdf = new SimpleDateFormat("yyyy-MM"); return sdf.parse(dateStr, pos); } else if (dateStr.matches("^\\d{4}-\\d{1,2}-\\d{1,2}$")) { sdf = new SimpleDateFormat("yyyy-MM-dd"); return sdf.parse(dateStr, pos); } else if (dateStr.matches("^\\d{4}-\\d{1,2}-\\d{1,2} {1}\\d{1,2}:\\d{1,2}$")) { sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); return sdf.parse(dateStr, pos); } else if (dateStr.matches("^\\d{4}-\\d{1,2}-\\d{1,2} {1}\\d{1,2}:\\d{1,2}:\\d{1,2}$")) { sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); return sdf.parse(dateStr, pos); } else if (dateStr.length() == 23) { sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); return sdf.parse(dateStr, pos); } return super.parse(dateStr, pos); } @Override public StringBuffer format(Date date, StringBuffer toAppendTo, FieldPosition fieldPosition){ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); return sdf.format(date, toAppendTo, fieldPosition); } @Override public GlobalJsonDateConvert clone() { return new GlobalJsonDateConvert(); } }
2.3 配置bean交给Spring管理
import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.databind.ObjectMapper; import com.xgf.online_mall.convert.GlobalFormDateConvert; import com.xgf.online_mall.convert.GlobalJsonDateConvert; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.support.ConversionServiceFactoryBean; import org.springframework.core.convert.ConversionService; import org.springframework.core.convert.converter.Converter; import org.springframework.http.MediaType; import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; import java.util.ArrayList; import java.util.List; import java.util.HashSet; import java.util.Set; @Configuration public class WebConfig { //JSON格式 全局日期转换器配置 @Bean public MappingJackson2HttpMessageConverter getMappingJackson2HttpMessageConverter() { MappingJackson2HttpMessageConverter mappingJackson2HttpMessageConverter = new MappingJackson2HttpMessageConverter(); //设置日期格式 ObjectMapper objectMapper = new ObjectMapper(); objectMapper.setDateFormat(GlobalJsonDateConvert.instance); objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); mappingJackson2HttpMessageConverter.setObjectMapper(objectMapper); //设置中文编码格式 List<MediaType> list = new ArrayList<MediaType>(); list.add(MediaType.APPLICATION_JSON_UTF8); mappingJackson2HttpMessageConverter.setSupportedMediaTypes(list); return mappingJackson2HttpMessageConverter; } //表单格式 全局日期转换器 @Bean @Autowired public ConversionService getConversionService(GlobalFormDateConvert globalDateConvert){ ConversionServiceFactoryBean factoryBean = new ConversionServiceFactoryBean(); Set<Converter> converters = new HashSet<>(); converters.add(globalDateConvert); factoryBean.setConverters(converters); return factoryBean.getObject(); } }
参考;博客园【NcQiao】大佬的文章:https://www.cnblogs.com/joelan0927/p/11715062.html
-
java工具类(五)之日期格式字符串与日期实现互转
2015-08-12 17:02:06项目开发过程中需要实现日期格式的字符串与日期进行互转,并进行日期的加减操作。 Demo如下: package weiming.lmapp.utils; import java.text.ParseException; import java.text.SimpleDateFormat; import java.... -
java日期中文格式转日期格式
2019-09-29 11:47:56java日期中文格式转日期格式 如:2019年10月20日转成日期格式 字符串转日期: public static Date StrToDate(String str) { SimpleDateFormat format = new SimpleDateFormat("yyyy年M月dd日"); Date date = ... -
oracle 英文日期格式转换中文日期格式
2018-03-09 17:52:41oracle 英文日期格式转换中文日期格式02-Mar-2010 这个格式是美国格式,可以使用如下语句转换成中文格式 2010/3/2:SELECT TO_DATE('02 Mar 2010 06:00:00', 'DD MONTH YYYY HH24:MI:SS', 'NLS_DATE_LANGUAGE = ... -
java时间戳与Date相互转换、日期格式化、给日期加上指定时长、判断两时间点是否为同一天
2018-05-31 23:20:44日期格式化 给日期加上指定时长 得到指定时间节点的Date 1、时间戳转Date 注:以下的方法中很多常量和方法我都没有提取出来,正式项目中还是建议大家封装在时间处理类中,规范化操作 public... -
SQL Server日期格式化
2018-11-13 16:19:39SQL Server日期格式化 Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06 Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16 Select ... -
JAVA 日期格式化
2019-07-07 20:39:47最近项目中需要用到SimpleDateFormat 格式化日期,但是因为对日期格式的不熟练多花了十分钟左右的时间在日期格式化上面,所以趁着周末外面下着大雨闲着无聊整理一下日期格式问题。 日期格式化学习 预定义格式日期... -
Java日期格式化
2019-07-09 12:08:19Java日期格式化 public class DateUtils { /** 时间格式(yyyy-MM-dd) */ public final static StringDATE_PATTERN ="yyyy-MM-dd"; /** 时间格式(yyyy-MM-dd HH:mm:ss) */ public final static StringDATE_TIME... -
SpringMVC日期格式化
2018-06-05 00:38:35一、关于SpringMVC日期的格式化大概可分为四点1.@ResponseBody方式返回json的日期格式化2.ajax方式返回json的日期格式化3.数据保存时String转Date4.页面展示时,Date转固定格式的String二、配置实现日期格式化1.@... -
前端如何操作后端返回日期格式(long格式转换为日期格式)
2018-09-04 10:54:25//long转换为日期格式函数 Date.prototype.format = function (format){ var o = { "M+": this.getMonth() + 1, "d+": this.getDate(), "h+": this.getHours(), ... -
vue日期格式处理
2018-12-16 15:05:06项目开发中,由于后台返回的数据是时间戳,所以前台需要有一哥统一处理日期。 举例:后台返回时间戳:...Transfer将时间戳转换成Date类型,Format第一个参数为日期格式,第二个参数为可选,当日期为nul... -
日期格式互转:(整型)时间戳与日期格式转换
2016-11-11 17:00:28日期格式互转:(整型)时间戳与日期格式转换 -
pandas日期列读取成日期格式
2019-02-18 15:28:03read_cav的时候加一个参数:parse_dates = ['date'],就会把date这一列自动转化为日期格式,例如: import pandas as pd data = pd.read_csv('test.csv',parse_dates = ['date']) 如果原来读取进来日期格式... -
Java日期格式与文本格式的互相转化
2020-02-29 23:43:15一、将日期【格式化】地转化为String...2、创建格式器对象DateFormat 创建日期格式化对象 DateFormat dateFormat1=DateFormat.getDateInstance(DateFormat.LONG);//可传入FULL LONG MEDIUM SHORT 四种参数 各有不... -
Oracle获取当前日期及日期格式
2018-05-16 15:16:00Oracle 获取当前日期及日期格式 获取系统日期: SYSDATE() 格式化日期: TO_CHAR(SYSDATE(),'YY/MM/DD HH24:MI:SS) 或 TO_DATE(SYSDATE(),'YY/MM/DD HH24:MI:SS) 格式化数字: TO_NUMBER 注: ... -
关于excel导出日期格式变化问题处理
2019-03-13 15:01:18关于excel导出日期格式变化问题处理 1.问题描述:java web项目,本来部署在windows下,导出数据库数据是,创建日期格式为2018-08-08 08:08:08。因服务器性能问题,迁移服务器至linux(centos 7.5)。现成操作人员... -
全局配置LocalDateTime,实现日期格式化(Date日期格式也通用)
2019-12-31 16:58:361、首先在配置文件中添加以下配置信息,确定日期格式,供下面配置类中进行读取 Spring: jackson: date-format: yyyy-MM-dd HH:mm 2、新建配置类,在程序运行初始化时进行加载,将日期格式进行转化 import ... -
日期格式正则
2018-07-03 20:13:32* 判断日期格式(2018-06-09 23:22:22) * @param dateStr * @return */ private boolean isDate(String dateStr){ Pattern p = Pattern.compile(&quot;^(\\d{4})(\\-)(\\d{2})(\\-)(\\... -
Elasticsearch日期格式化
2019-07-09 11:14:25参照以下文章进行日期格式化即可,传送门: https://blog.csdn.net/smilepasta035/article/details/79550400 -
pandas中将时间戳转化为日期格式和将日期格式转化成时间戳
2019-03-11 22:59:41要想将时间戳转换为日期格式需要用到**pd.to_datetime()**这个函数,示例: df['time_stamp']=pd.to_datetime(df['time_stamp'],unit='s',origin=pd.Timestamp('2018-07-01')) 这个的意思是将time_stamp这列的... -
JavaScript获取格式化日期格式
2015-12-03 14:18:38JavaScript获取格式化日期格式,JS对日期的处理比较麻烦,格式的函数需要自己实现。 -
java 实体类中日期属性格式化 @JSONFORMAT 日期格式自动格式化
2018-01-16 14:14:27通常日期格式都是以时间戳的形式存放在数据库里,当前端页面通过接口查询时,我们会将一个对象的某些属性查出来返回给页面。 例如,某个类里面有个属性 Timestamp create_time 给这个对象实体类中的get方法加注解... -
Sql Server 日期格式转换
2019-08-06 12:31:49SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm 例如: select getdate() 2004-09-12 11:06:08.177 整理了一下SQL Server里面可能经常会用到的日期格式转换方法: 举例如下: select CONVERT... -
python xlwt日期格式
2018-08-22 15:16:26需要用Python写入日期时,可以设置特定的格式,这篇就讲日期格式的设置,灰常简单 import xlwt #日期格式 datastyle = xlwt.XFStyle() datastyle.num_format_str = 'yyyy-mm-dd' row=1 col=1 value=20180803 #写入...
-
04 准备Python编程环境.mp4
-
火绒右键管理助手——Windows可用
-
萝丽双路单向电调 - B版固件-增加丢信号保护.rar
-
21年新接口自动化测试视频postman教程 零基础接口测试
-
备战2021软考网络规划设计师顺利通关培训套餐
-
小学数学知识点大全 (性质和规律)<NLP 颜色标记>
-
分子生物学二次数据库资源平台的构建.pdf
-
更改Typora宽度
-
(新)备战2021软考系统集成学习套餐
-
基于SEIR模型的新冠肺炎预测
-
智联万物,京东IoT技术创新与实践
-
国家注册信息安全工程师体系课程(CISP-PTE)
-
萝丽双路单向电调 - B版源码-增加丢信号保护.rar
-
nexus最新-3.29.2-windows64版本 nexus-3.29-win64
-
US Domain Center建站神器 2: 将我的网站连接到域名
-
BUU WEB [SUCTF 2019]EasySQL
-
快速幂算法(模板)
-
php中上传图片到mysql数据库中
-
Redis数据库入门与使用
-
ubuntu-18.04.3虚拟机安装方法+VMwareTools安装方法