我的项目现在的处境:
数据库存的时间是时间戳 , 页面显示的是‘2018-04-12 或者 2018-04-12 12:00:00’这种格式;
时间戳转换时间:
String timeStr1 = transForDateymr(Integer.parseInt(1523524528)); //结果:2018-04-12 String timeStr2 = transForDate(Integer.parseInt(1523524528)); //结果:2018-04-12 17:15:28 /** * 时间戳转日期 带时分秒 * @param ms * @return */ public static String transForDate(Integer ms){ if(ms==null){ ms=0; } long msl=(long)ms*1000; SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String temp=null; if(ms!=null){ try { String str=sdf.format(msl); temp=sdf.format(sdf.parse(str)); } catch (ParseException e) { e.printStackTrace(); } } return temp; } /** * 时间戳转换时间 不带时分秒 * @param ms * @return */ public static String transForDateymr(Integer ms){ if(ms==null){ ms=0; } long msl=(long)ms*1000; SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); String temp=null; if(ms!=null){ try { String str=sdf.format(msl); temp=sdf.format(sdf.parse(str)); } catch (ParseException e) { e.printStackTrace(); } } return temp; }
mysql 存时间的时候,以时间戳的格式存入的;
time:2018-04-12
时间戳:UNIX_TIMESTAMP('2018-04-12')
insert into table1 (id,time) values (1,UNIX_TIMESTAMP('2018-04-12'))
如果页面有时间查询,页面传参时间格式:2018-04-12 ,但是数据库存的是时间戳
时间比较: time >= UNIX_TIMESTAMP(#StartDate#)
and time <= UNIX_TIMESTAMP(#EndDate#)
日月年 转换 成年月日 24小时制(yyyy-MM-dd HH:mm:ss) 12小时制(yyyy-MM-dd hh:mm:ss)
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss");
Date maxDate = simpleDateFormat.parse('12-04-2018 17:15:28');
String dateStr = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(maxDate);