>  기사  >  데이터 베이스  >  Oracle中关于计算时间差的例子:

Oracle中关于计算时间差的例子:

WBOY
WBOY원래의
2016-06-07 15:32:351161검색

今天在做项目的时候遇到了这样一个问题:就是要得到在线时长: 截图如下:最后要达到如下效果: 我之前想了一种方案:我想通过SQL语句查库,但是最后发现这种办法还解决不了,最后我又想了一种: 就是通过一个计算时间差的方法直接在那个在线时长的get()方法

今天在做项目的时候遇到了这样一个问题:就是要得到在线时长:

 截图如下:最后要达到如下效果:

Oracle中关于计算时间差的例子:








我之前想了一种方案:我想通过SQL语句查库,但是最后发现这种办法还解决不了,最后我又想了一种:

就是通过一个计算时间差的方法直接在那个在线时长的get()方法中给它赋值,这样就可以很简单的得到这个值了。

废话不多说了,直接上代码:

1.这是你计算时间差的类:

public class DateFormat {

/**
* 计算两个时间的时间差
* @param from
* @param to
* @return
*/
public static String timeBetweens(Date from, Date to) {
        final long ONEDAY = 86400000L; // 1天=86400000毫秒
        final long ONEHOUR = 3600000L; // 1小时=3600000毫秒
        final long ONEMIN = 60000L; // 1分钟=60000毫秒
        long days = 0, hours = 0, mins = 0, secs = 0;
        if (to.after(from)) {
            secs = to.getTime() - from.getTime();
            days = secs / ONEDAY;
            secs = secs % ONEDAY;
            hours = secs / ONEHOUR;
            secs = secs % ONEHOUR;
            mins = secs / ONEMIN;
        }
        String rtnStr = days + "天" + hours + "小时" + mins + "分钟";
        return rtnStr;
    }

public static void main(String[] args) {
Date date = new Date();
Date date1 = new Date();
String string = timeBetweens(date, date1);
System.out.println(string);
}
}


2. 这是你的实体类:

private String wmistiming;

public String getWmistiming() {
return DateFormat.timeBetweens(wlogdate, wupdate);
}
public void setWmistiming(String wmistiming) {
this.wmistiming = wmistiming;
}



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:交换机 F5互连다음 기사:如何使用Cocos2d