java代码 和 mysql SQL中的时间格式化对比

1、sql 中格式化时间:
%Y-%m-%d %H:%i:%S我们举例当前时间2020-11-16 16:25:34 来讲解
%Y是指年 ,区分大小写:大写是阿拉伯4位比如今年2020;小写是阿拉伯两位20。
%m是指月,区分大小写:大写是指英文比如11月November;小写是阿拉伯11。
%d是指日,区分大小写:大写是指本月第几天,16号为16th;小写是阿拉伯16。

%H是指时,区分大小写:大写是指24小时制当前为16,;小写是12小时制04。
%i是指分钟,不区分大小写
%S是指秒,不区分大小写

举例如下:
1)mysql 默认时间格式yyyy-MM-dd HH:mm:ss 在sql中使用%Y-%m-%d %H:%i:%S 格式
select DATE_FORMAT(now(), ‘%Y-%m-%d %H:%i:%S’) as newTime

2)yyyy-MM-dd 在sql中使用 %Y-%m-%d 格式
select DATE_FORMAT(now(), ‘%Y-%m-%d’) as newTime;

3)MM-dd 在sql中使用 %m-%d 格式,寻找用户表里生日大于10月1号的用户
select * from userInfo where DATE_FORMAT(user_birthday,’%m-%d’) > ‘10-01’

4)详解如下图:图

2、java中格式化时间:
我们最常使用的就是
SimpleDateFormat format= new SimpleDateFormat(yyyy-MM-dd HH:mm:ss);
Date date = format.parse(dateStr);//字符串时间转为时间格式
String dateStr = format.format(date);//时间类型格式化为字符串格式

1)字符串类型格式化为时间类型工具:

/**
		 * 将对应格式的字符串转为日期格式的时间
		 * @param dateStr日期字符串
		 * @param type 字符串类型
		 * @return
		 * 举例:strToDate("20190412",3)
		 */
		 
		 
		public static Date  strToDate(String dateStr,int type){
			String formateType ="";
			if(type == 1 ) {
				formateType = "yyyyMMddHHmmss";
			}else if(type == 2) {
				formateType = "yyyyMMdd";
			}else if(type == 3) {
				formateType = "yyyyMMddHHmmssSSS";
			}else if(type == 4){
				formateType = "yyyy-MM-dd";
			}else {
				formateType ="yyyy-MM-dd HH:mm:ss";
			}
			
			Date date = new Date();
			try {
				SimpleDateFormat format= new SimpleDateFormat(formateType);
				date = format.parse(dateStr);
			} catch (Exception e) {
				// TODO Auto-generated catch block
				return new Date();
			}
			return date;
		}

2)时间格式的转换为字符串类型:

/**
		 * 将日期转为对应格式的字符串
		 * @param date
		 * @param type
		 * @return
		 * 举例:dateToStr(new Date(),2)
		 */
		
		public static String  dateToStr(Date date,int type){
			String dateStr = getDate();
			String formateType ="";
			if(type == 1 ) {
				formateType = "yyyyMMddHHmmss";
			}else if(type == 2) {
				formateType = "yyyyMMdd";
			}else if(type == 3) {
				formateType = "yyyyMMddHHmmssSSS";
			}else if(type == 4){
				formateType = "yyyy-MM-dd";
			}else {
				formateType ="yyyy-MM-dd HH:mm:ss";
			}
			
			try {
				
				SimpleDateFormat format= new SimpleDateFormat(formateType);
				
				dateStr = format.format(date);
				
			} catch (Exception e) {
				System.out.println(e.getMessage());
			}
			
			
			return dateStr;
		}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值