我触及了这部分代码。
我正在使用Spring + Hibernate从数据库和JSP中获取记录以查看这些记录。
这里的问题是显示500条记录需要大约10秒钟:(
所以,我保留了一些时间戳,看看它花了多长时间。
我找到了一些有趣的东西:
1.从jsp页面转到DAO,我有代码来获取记录,这需要花费更多时间(不知道它花了多少时间)
2.从数据库中获取记录需要几毫秒
3.将它们显示回jsp它需要3秒钟。
我的问题是如何在第一种情况下找到时间。我在剩下的两个案例中成功找到了时间。
所以,我把时间戳放在JSP中
<c:if test="${currentPage != 1}">
<a onclick="return displayTimeFunctionP();" class="button" href="pagination.html? page=${currentpage-1}"> << Previous </a>
</c:if>
javascript:
function displayTimeFunctionP() {
<% Timestamp t1 = new Timestamp(new Date().getTime());%>
<%System.out.println("Time stamp in onclick() function[previous] :"+t1); %>
return false(true also I tested);
}
但它没有在这个页面中显示时间并且直接进入下一页然后显示时间。但是,我的函数正在执行,因为如果我给出返回false,它不会进入下一页而不显示任何内容。< / p>
为什么会发生这种情况以及如何在转到下一页之前从该javascript获取时间戳?
请帮忙......
答案 0 :(得分:0)
这段java代码将日期打印到JS函数
中function displayTimeFunctionP() {
<% Timestamp t1 = new Timestamp(new Date().getTime());%>
<%System.out.println("Time stamp in onclick() function[previous] :"+t1); %>
return false;
}
解析为:
function displayTimeFunctionP() {
return false;
}
并打印到您的服务器系统中: onclick()函数中的时间戳[上一页] 23423424234 不在您的页面中。
执行onclick后,它还会执行href导航并更改页面。
要在网页中打印,您应该使用 out.println (没有系统),但如果您将文本直接打印到JS函数中,则会出现javascript错误。这并不能阻止导航器加载下一页。你应该使用javascript&#34; document&#34;或DOM在某个地方打印文本。
答案 1 :(得分:0)
试试这个: 首先在你的html或jsp中定义如下:
<p id="demo"></p>
并添加以下脚本:
<script>
function myFunction() {
var d = new Date();
document.getElementById("demo").innerHTML = d ;
}
</script>
如果要打印毫秒,请尝试
d.getMilliseconds()