日期格式转换(前端+后端+Oracle)

格式化时间的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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值