Supponiamo che tu abbia 2 div all'interno del tuo file html.
<div id="div1">some text</div>
<div id="div2">some other text</div>
Il programma java stesso non può aggiornare il contenuto del file html perché html è correlato al client, mentre java è correlato al back-end.
È tuttavia possibile comunicare tra il server (il back-end) e il client.
Quello di cui stiamo parlando è AJAX, che ottieni usando JavaScript, ti consiglio di usare jQuery che è una libreria JavaScript comune.
Supponiamo che tu voglia aggiornare la pagina ogni intervallo costante, quindi puoi usare la funzione intervallo per ripetere la stessa azione ogni x volta.
setInterval(function()
{
alert("hi");
}, 30000);
Puoi anche farlo in questo modo:
setTimeout(foo, 30000);
Whereea foo è una funzione.
Al posto dell'avviso ("ciao") puoi eseguire la richiesta AJAX, che invia una richiesta al server e riceve alcune informazioni (ad esempio il nuovo testo) che puoi usare per caricare nel div.
Un AJAX classico si presenta così:
var fetch = true;
var url = 'someurl.java';
$.ajax(
{
type : 'post',
url : url,
dataType : 'json',
data :
{
'fetch' : fetch
},
success : function(data)
{
var res1, res2;
for(var i = 0; i < data.length; i++)
{
res1 = data[i].res1;
res2 = data[i].res2;
$('#div1').html(res1);
}
},
complete : function(data)
{
}
});
Laddove il backend è in grado di ricevere dati inseriti in POST ed è in grado di restituire un oggetto dati di informazioni, ad esempio (e molto preferibile) JSON, ci sono molti tutorial là fuori su come farlo, GSON di Google è qualcosa che io usato un po 'di tempo fa, potresti dare un'occhiata.
Non sono professionale con la ricezione di Java POST e la restituzione di JSON di questo tipo, quindi non ho intenzione di darti un esempio con questo, ma spero che questo sia un inizio decente.