Servlet 获取登录在线时长

Servlet 获取登录在线时长

开发工具与关键技术:java、 elipse2019、jdk1.8 
作者:Amewin	
撰写时间:2019年6月6日
说明:

很多时候,项目需求要获取当前的在线时长,而在java后台又不好处理时间格式,并不能很好返回需要的数据,所以参考网上的写法,自己弄了一个可用的封装方法。

后台代码

public static String getDatePoor(Date endDate, Date nowDate) {
		 
	    long nd = 1000 * 24 * 60 * 60;
	    long nh = 1000 * 60 * 60;
	    long nm = 1000 * 60;
	    // long ns = 1000;
	    // 获得两个时间的毫秒时间差异
	    long diff = endDate.getTime() - nowDate.getTime();
	    // 计算差多少天
	    long day = diff / nd;
	    // 计算差多少小时
	    long hour = diff % nd / nh;
	    // 计算差多少分钟
	    long min = diff % nd % nh / nm;
	    // 计算差多少秒//输出结果
	    // long sec = diff % nd % nh % nm / ns;
	   // System.out.println(day + "天" + hour + "小时" + min + "分钟");
	    return (day==0?"":day+"天") + (hour==0?"":hour+"小时")  +  + min ;
	}
	

前台代码

<ul class="breadcrumb" style="float:right;margin-top:20px">
	  <li><span>登录时间:</span><spanid="bgclockshade"></span>
	<%=session.getAttribute("logintime") %>
	<!-- 将session中的数据展示出来 <%=  %>-->
	<span>&nbsp;</span></li><li><span>登录:</span><span id="LoginTime">
	</span></li><li><a href="javascript:;" id="loginOut">注销</a></li>
</ul>
<script language="JavaScript">
		$(function() {
		time();
		});
        function time() {
            $.ajax({
                type: "post",
                url: "loginMainServlet?type="+"time",
                dataType: "json",
                success: function (data) {
                    $("#LoginTime").html(data + "分钟");
                }
            });
            setTimeout("time()", 30000);//每个30秒调用一次方法
        }
</script>

示例

在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值