Nehmen wir an, Sie haben 2 Divs in Ihrer HTML-Datei.
<div id="div1">some text</div>
<div id="div2">some other text</div>
Das Java-Programm selbst kann den Inhalt der HTML-Datei nicht aktualisieren, da sich das HTML auf den Client bezieht, während sich Java auf das Back-End bezieht.
Sie können jedoch zwischen dem Server (dem Back-End) und dem Client kommunizieren.
Wir sprechen von AJAX, das Sie mit JavaScript erreichen. Ich empfehle die Verwendung von jQuery, einer gängigen JavaScript-Bibliothek.
Angenommen, Sie möchten die Seite in jedem konstanten Intervall aktualisieren. Anschließend können Sie mit der Intervallfunktion jedes Mal dieselbe Aktion wiederholen.
setInterval(function()
{
alert("hi");
}, 30000);
Sie können es auch so machen:
setTimeout(foo, 30000);
Wobei foo eine Funktion ist.
Anstelle der Warnung ("hi") können Sie die AJAX-Anforderung ausführen, die eine Anforderung an den Server sendet und einige Informationen (z. B. den neuen Text) empfängt, die Sie zum Laden in das div verwenden können.
Ein klassischer AJAX sieht so aus:
var fetch = true;
var url = 'someurl.java';
$.ajax(
{
// Post the variable fetch to url.
type : 'post',
url : url,
dataType : 'json', // expected returned data format.
data :
{
'fetch' : fetch // You might want to indicate what you're requesting.
},
success : function(data)
{
// This happens AFTER the backend has returned an JSON array (or other object type)
var res1, res2;
for(var i = 0; i < data.length; i++)
{
// Parse through the JSON array which was returned.
// A proper error handling should be added here (check if
// everything went successful or not)
res1 = data[i].res1;
res2 = data[i].res2;
// Do something with the returned data
$('#div1').html(res1);
}
},
complete : function(data)
{
// do something, not critical.
}
});
Während das Backend POST-Daten empfangen und ein Datenobjekt mit Informationen zurückgeben kann, z. B. (und sehr bevorzugt) JSON, gibt es viele Tutorials dazu, GSON von Google ist etwas, das ich vor einiger Zeit verwendet, konnte man einen Blick darauf werfen.
Ich bin nicht professionell mit dem Empfang von Java POST und der Rückgabe von JSON dieser Art, daher werde ich Ihnen kein Beispiel dafür geben, aber ich hoffe, dass dies ein anständiger Anfang ist.