Recently there is a trend back from SPA to server side rendering to avoid complexity, which isn't needed for most kind of apps. Htmx is a good addition in this scenario, which describes ajax calls as html attributes. You may have a look at bootify.io for generating such an application setup.
Every language has it's pros and cons, Java has some overhead here and there but very mature and lots of libraries.
Comments
Recently there is a trend back from SPA to server side rendering to avoid complexity, which isn't needed for most kind of apps. Htmx is a good addition in this scenario, which describes ajax calls as html attributes. You may have a look at bootify.io for generating such an application setup. Every language has it's pros and cons, Java has some overhead here and there but very mature and lots of libraries.