Domanda un po' troppo generica.
La nuova frontiera' sono le SPA (Single Page Applications, o non so che nome abbiano assunto ora ).
Le JSP sono una ""tecnologia vecchia"" (per modo di dire ).
Diciamo che l'idea e' SEPARARE in modo BEN DEFINITO la parte client dalla parte server:
1) la parte client viene implementata SOLO in javascript/html/css e librerie varie (Angular, Vue, React, ...)
2) la parte server fornisce SOLO servizi RESTful, e la implementi con il linguaggio che preferisci (fondamentalmente Java, C#)
Questo approccio ha tutta una serie di comodita', una delle quali e' che il server NON ha la responsabilita' di generare l'interfaccia utente e l'interfaccia utente puo' essere implementata per diverse tipologie di dispositivi senza impattare sul server.
ASSIOMA: si studia SU LIBRI (in inglese)!!!!