格式化时间的freemarker方法
${(createTime)?number_to_datetime?string("yyyy-MM-dd HH:mm:ss")} //日期格式转换
HH:代表24小时计算 hh:代表12小时计算
格式化时间的后台方法
Long currTime = System.currentTimeMillis();
Long currTime = Calendar.getInstance().getTimeInMillis();
Long currTime = new Date().getTime()
String sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(currTime);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = format.format(System.currentTimeMillis());//结果 2017-11-06 11:45:55
Long date = format.parse(time).getTime();//转换后的时间戳 1504660400000
后台获得当前时间:System.currentTimeMillis()
JS中获得当前时间:var curtime = (new Date()).getTime();
var curtime = Math.round(new Date/1000)//获取的是时间戳,去掉/1000则获取到毫秒
拼字符串:
var date=changeDate(data.ggStartTime);
function changeDate(d){
var date = new Date(d);
var year = date.getFullYear();
var month = date.getMonth() + 1;
var strDate = date.getDate();
if(month<10){
month="0"+month;
}
if(strDate<10){
strDate="0"+strDate;
}
return year+"-"+month+"-"+strDate;
}
js中获取easyui的日期控件的值
$('#date').datebox('getValue');
获取百度网络时间:
后台:
@ResponseBody
@RequestMapping("/getIntelTime")
public Map<String, Object> getIntelTime(){
URLConnection uc=null;
uc = new URL("https://www.baidu.com").openConnection();
uc.connect();// 发出连接请求
long time = uc.getDate();// 读取网站日期时间
Map <String,Object> resultMap=new HashMap<String,Object>();
resultMap.put("time", time);
return resultMap;
}
JavaScript:
var longTimex="";//网络时间
var xTime="";//本地时间与网络时间的差距
$(function (){
$.ajax({
url : "${base}/getIntelTime?time="+new Date().getTime(),
dataType:"json",
success : function(data){
longTimex=data.time;
xTime=longTimex-new Date().getTime();
$("#jnkc").html(new Date(new Date().getTime()+xTime).toLocaleString()+' 星期'+'日一二三四五六'.charAt(new Date(longTimex).getDay()));
window.setInterval(setTime, 1000);
}
});
});
function setTime(){
jnkc.innerHTML=new Date(new Date().getTime()+xTime).toLocaleString()+' 星期'+'日一二三四五六'.charAt(new Date(longTimex).getDay());
}
body:
<span>国家授时中心标准时间</span>
<span id="jnkc">
</span>
windows计时器:
var InterValObj; //timer变量,控制时间
var count = 120; //间隔函数,1秒执行
var curCount;//当前剩余秒数
var code = ""; //验证码
function jishi(){
curCount = count;
$("#Phone_tj").val(curCount);
InterValObj = window.setInterval(SetRemainTime, 1000); //启动计时器,1秒执行一次
//timer处理函数
function SetRemainTime() {
curCount--;
$("#Phone_tj").val(curCount);
}
}
window.clearInterval(InterValObj);// 停止计时器
<input class="" type="button" id="Phone_tj" style="width:150px;height:40px;padding-left:0px" value="发送短信验证码" οnclick="jishi()"/>
后台获取10分钟前的时间(后台时间戳转换为日期):
Long currTime=System.currentTimeMillis();//获取的是时间戳
String sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(currTime);//转换为日期
System.out.println("当前时间:"+sdf);
Long diff=currTime-10*60*1000;//减去10分钟
sdf= new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(diff);
System.out.println("10分钟前:"+sdf);
结果:
当前时间:2017-03-01 11:30:34
10分钟前:2017-03-01 11:20:34
JS日期转换为时间戳:
var name = new Date("2015-06-23 08:00:20".replace(/-/g,"/")).getTime();
JS时间戳转换为日期:
var name = new Date(1499139213342).Format("yyyy-MM-dd HH:mm:ss");
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;
} ;
循环打印时间
package com.zhulong.jiaoyi.taskJob;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class Test {
public static void main(String[] args) throws ParseException {
Calendar c = Calendar.getInstance();
DateFormat dateFormat1 = new SimpleDateFormat("yyyy-MM-dd");
//开始时间必须小于结束时间
Date beginDate = dateFormat1.parse("2016-10-01");
Date endDate = dateFormat1.parse("2017-09-10");
Date date = beginDate;
while (!date.equals(endDate)) {
c.setTime(date);
c.add(Calendar.DATE, 1); // 日期加1天
date = c.getTime();
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String curdata=format.format(date);//格式 2017-09-15
System.out.println("日期:"+curdata);
Long curtime = format.parse(curdata).getTime();//获得前一天时间零点的时间戳
System.out.println("时间戳:"+curtime);
}
}
}
ORCLE时间戳转换:
TO_CHAR(jy.CREATE_TIME / (1000 * 60 * 60 * 24) +TO_DATE('1970-01-01 08:00:00', 'YYYY-MM-DD HH24:MI:SS'), 'YYYY-MM-DD HH24:MI:SS') AS "创建时间"
(TO_NUMBER(TO_DATE(TO_CHAR(qy.SYS__CREATE_OR_UPDATE_TIME,'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss')-TO_DATE ('1970-01-01 8:0:0','YYYY-MM-DD HH24:MI:SS'))*24*60*60*1000)
获得数据库时间节点:
SELECT (SYSDATE - TO_DATE('1970-1-1 8', 'YYYY-MM-DD HH24')) * 86400000 + TO_NUMBER(TO_CHAR(SYSTIMESTAMP(3), 'FF')) AS MILLIONS FROM DUAL