从 <div> java 类获取的 jsp 文件中的刷新值



我是java和jsp文件的新手。我有一个应用程序,它使用java类定期从设备下载数据,并将其发送到jsp文件中:

<div id="showtime">
<%
out.print(download.show[0]); <---- this is public table in java class download
%>
</div>

我的问题是:有没有什么方法可以用来刷新从java类中获取的值,而不刷新整个页面或重新设置会话超时倒计时?

编辑:我尝试了一些AJAX的解决方案,但它不起作用,我不知道我在哪里犯了错误:

<script>
function dateup(){
$.ajax({
type: "GET",
url: "${pageContext.request.contextPath}/update",
success: function(response){
$('#showtime').html(response);
alert("success");
},
error: function () {
alert("not success");
}
});
}
</script>

Servlet更新:

@WebServlet(name = "update")
public class update extends HttpServlet {

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String text = "some text";
response.setContentType("text/plain");
response.setCharacterEncoding("UTF-8");
response.getWriter().write(text);.
}
}

映射:

<servlet>
<servlet-name>update</servlet-name>
<servlet-class>servlets.update</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>update</servlet-name>
<url-pattern>/update</url-pattern>
</servlet-mapping>

我将<div>更改为:<div id="showtime"></div>

按钮触发功能:<button onclick="dateup()">press here</button>

但它不起作用。不会改变它的上下文。这既不会触发成功函数,也不会触发错误函数。

"JSP是一种服务器端技术,这意味着如果您想刷新页面,您必须向服务器执行请求,服务器将返回新页面。仅仅通过普通的JSP机制返回页面的一部分是不可能的。

如果您只想刷新一个值,则需要使用javascript对服务器进行ajax调用,以获取所需的数据,并用这些数据重新填充该值">

最新更新