Inanzi tutto dipende dalle tue conoscenze, se conosci gia qualcosa di html,javascript,css web in generale insomma, ti conviene orientarti più sulle web application in java.
Altrimenti le applet, ma devi considerare che le applet non sono server side ovvero che non girano sul server ma sul client, quindi se hai la base di dati residente su un server remoto devi implementare, a mano, un canale di comunicazione con il db per persistere i dati.
Io comunque al di la delle conoscenze ti suggerisco di orientarti alle web apps,
1) per un fattore di sicurezza: infatti le applet non sono altro che jar che vengono scaricati e messi in cache dalla JVM e chiunque può accedrvi, decompilare le classi e scopiazzare il codice (io l'avrò fatto mille volte), per non parlare dei dati di connessione al tuo db!!
2)Le gui delle applet vanno fatte quasi tutte a mano (ci sono dei tools ma comunque poi il codice va rimaneggiato) e non è proprio di facile implementazione come fare una pagina in html.
Ci sono due sistemi per costruire web app, uno con un servlet container (come Tomcat) che si compone di classi java e jsp e uno con java EE. Il secondo è un sistema orientato ai servizi (infatti si chiamano web services) dove il servizio risiede su un server in attesa di messaggi (standard XML) inclusi in una busta (più famosa SOAP) spediti tramite l'http sono molto utili quando c'è bisogno di interoperabilità tra diversi sistemi, essendo indipendenti dalla architettura con cui sono scritti.
Le JSF di cui parli non sono altro dei tag tld, ovvero un insieme di librerie (framework) che definiscono delle "scorciatoie" per la costruzione delle pagine web, ma il risultato di queste JSF sarà sempre e comunque codice HTML.
Nel tuo caso sarebbero molto utili poichè le pagine che devi creare sono abbastanza semplici, una lista e un form, quindi con poche righe di codice saresti a cavallo.

Rispondi quotando