Ciao,sebbene siano passati un po' di giorni mi intrometto nella discussione. Quello che generalmente avviene in un progetto più o meno serio è la suddivisione del progetto in 3 parti: BE, FE e DB.
A questi si aggiunge una parte "Sistemistica" dove in genere si effettua il deploy di tutto il software, che puo essere un web hosting, un server, una VPS o simili.
Il DataBase, che immagazzina i dati da recuperare, modificare o censire per futura consultazione/modifica; in genere per chi è agli inizi si consiglia MySQL che ragiona, appunto, in linguaggio SQL.
Il BackEnd è la parte in Java che si occupa dell'elaborazione delle richieste pervenute dal FE, inoltre recupera i dati dal DB interfacciandosi direttamente con esso e facendo da intermediario col FE. Se vi sono logiche da nascondere all'utente saranno di certo da porre lato BE in quanto il codice BE, che risiede sempre lato "sistemistico" (quindi sul nostro server, o vps o web hosting....) non viene mai e per nessun motivo reso pubblico lato client.
Infine abbiamo il FE che è il codice a cui il client (chi usa il sito, l'utente finale) ha accesso e per questo è facilmente hackerabile.
Fatta questa intro GENERALE al massimo sappi che è possibile creare tantissime varianti che consentono un'architettura molto snella e che quindi salta a piè pari 1 o addirittura più strati di quelli descritti.
Ti faccio un esempio: in tempi recenti abbiamo un tipo di architettura lato FE nota come node.js che consente di emulare un BE ma di posizionarlo sempre lato FE. in questo modo scrivi codice in Javascript al pari di come lo scriveresti in Java; tutto ciò consente tramite opportune API, ad esempio firestore, di accedere al DB direttamente da codice javascript... cosa inimmaginabile fino a pochi anni fa!
Venendo al tuo problema... è possibile risolvere un problema in 1000 modi diversi.
La canonica soluzione sarebbe effettuare un BE in Java ed un FE in html e js oppure in angular oppure in react o quello che preferisci.
java esporrebbe dei servizi rest che verrebbero richiamati dal tuo FE. lo stesso Java, se necessario, si interfaccerebbe col DB per recuperare le tue label/immagini da mostrare sul sito; sarebbe anche possibile evitare il DB e prelevare il tutto dal tuo pc, ma a questo punto il software non è più distribuibile perchè dovresti fare riferimento alle cartelle del tuo pc.
come ti dicevano gli altri utenti non è possibile interfacciarsi alle cartelle del tuo pc direttamente dal FE... devi obbligatoriamente utilizzare un linguaggio BE, appunto Java.
devi quindi decidere come implementare la soluzione perchè la fase iniziale, l'analisi del problema, viene prima di tutto.
deciso il come ed il cosa poi metti mano al codice.
Consiglio per fare in fretta:
visto che conosci bene Java dovresti conoscere Spring. crea un servizio rest invocabile dal tuo FE che semplicemente legge i file dal tuo pc e ne rimanda il contenuto al FE: cerca online "Spring rest api", "Java read data from file", "dto", combina le informazioni ed ottieni il tuo servizio REST.
lato fe visto che sei meno ferrata ti direi di fare la versione light: non credo tu abbia il tempo di studiare un framework come angular o react, quindi per ora cerca "js ajax call" "js ajax spring api".
ti lascio anche un minimo esempio (non dei migliori purtroppo) da cui prendere spunto:
http://www.kscodes.com/spring-mvc/spring-mvc-ajax-handling-using-jquery/
Se davvero ti interessa, anche per un possibile lavoro futuro allora studia... l'informatica offre moltissime possibilità ma va capita bene altrimenti non duri molto.