Java - 从应用程序刷新打开的 html 页面

标签 java html freemarker

我有一个从应用程序创建 html 页面的应用程序(我使用 freemarker )。之后,我使用桌面打开应用程序生成的网页,如下所示:

public void openPage() {
        if (Desktop.isDesktopSupported()) {
            try {
                File file = new File("index.html");
                Desktop.getDesktop().open(file);
            } catch (IOException ex) {
                System.out.println("Error opening a html page.");
                ex.printStackTrace();
            }
        }
    }

现在,我的问题是:有没有办法从我的应用程序刷新页面?我正在动态更改浓度,并且我想每隔几秒刷新一次浏览器中的页面。

或者直接在后台更新页面并使用javascript在html代码中刷新它会更好吗?

感谢您的任何提示!

编辑:请注意,我想从该网页上的某种形式与我的java应用程序进行通信(例如发送参数来指定我的页面更新方式)

最佳答案

使用 AJAX 技术( jQuery 非常适合您的需求)在您的应用程序中调用服务器端 Controller 。然后您可以协商数据更新的需要。为此,建议使用 JSON API。您可以使用Jackson 用于 Java 代码中与 JSON 相关的操作。

为了节省带宽,您可以仅轮询一个 boolean 值,以确定服务器自上次更新以来是否有新数据(例如,提供 since=[some_timestamp] 作为请求参数)并仅在有意义时才查询实际数据(即服务器返回 true)。

关于Java - 从应用程序刷新打开的 html 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16102709/

相关文章:

liferay - 如何获取WCM(Liferay)中的页面列表?

java - JTable 右对齐表头

java - Android - 检查互联网连接(使用需要登录的开放 Wifi 点)

java - 为什么此 CompletionStage 代码会导致编译错误?

html - 如何使我的脚本符合 HTML 5

java - java中丰富的PDF生成框架

xml - 使用 XSD 确保 XML 验证中的字符串不为空

java - 如何使用 hibernate 读取地理值?

ios - 我可以重写附带的 AS1 Flash 游戏并创建具有相同性能的 HTML5/JavaScript/CSS3/PhoneGap iPad 应用程序吗?

javascript - 带有 CSS 过渡的 Firefox 中奇怪的像素移动/跳跃