[英]Reload java method in JSP after every two seconds
我在一个类中有一个Java方法,我想每2秒在JSP中调用此方法。 另外,要将此方法返回的值保存到JSP中的变量。
valuepass.java
package docker;
public class valuepass{
public static int value=0;
public static int count(){
if ( value >= 99 ){
System.out.println(value);
return value; //or throw exception, whatever
}
else{
System.out.println(value);
return value++;
}
}
}
index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
import="java.util.* , java.io.*" pageEncoding="UTF-8"%>
<%@page import="docker.*"%>
<html>
<head>
<script type="text/javascript" src="JS/jquery-1.4.2.min.js"></script>
<script type="text/javascript">
var auto = setInterval( function ()
{
<%= valuepass.count() %>;
}, 2000); // refresh every 2000 milliseconds
</script>
</head>
<body>
<center>
<font face="verdana" size="4px">
Auto Reload Part Of Webpage Every 2 Seconds In Java-Jsp-jQuery
</font><br><br>
<img src="images/java4s.png"><br><br>
<div id="score"></div>
</center>
</body>
</html>
但是index.jsp每次都会返回相同的值,但是在Java代码中,我会在每次调用时递增该值。
我得到的输出是0,并且每次重载页面时都会给出递增的值,例如1、2、3 ......
我想要的是0123456789 ...
我认为我在scriptlet中调用valuepass.count有一些问题
另外,我将valuepass.count返回的值存储在变量中,以便可以在JSP中使用它。
在java类中,使用session.setAttribute("value",countValue);
其中countValue的初始值为0,它是调用java方法时加载的值。 会话将具有价值。 因此,如果再次调用该方法,请使用String countValue = session.getAttribute("value");
从会话获取值。将1
与会话值session.setAttribute("value",countValue);
然后再次将其设置为会话session.setAttribute("value",countValue);
SO会话将永久具有该值。 如果要删除会话值,请使用session.removeAttribute("value");
。 在项目中的任何位置调用此会话。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.