Cómo hacer una aplicación web (back-end) usando Java

Tendrá que aprender algunas tecnologías. En mi opinión, Spring MVC con JPA + Jackson es un muy buen comienzo. Puede elegir la base de datos relacional que desee, pero PostgreSQL es fantástico y se ha vuelto muy popular a lo largo de los años.

Más allá de eso, necesitarás leer y estudiar cómo unir estas cosas, posiblemente usando Maven para agarrar un arquetipo adecuado (un esqueleto listo para usar).

No diría que hacer un buen back-end sea fácil, pero esta ruta es muy fácil de mantener y de extender a medida que se desarrolla, especialmente debido al increíble trabajo que el equipo de Spring Framework ha realizado a lo largo de los años).

Spring Security también es un sistema de autenticación y autorización para este marco.

(Nota: a menos que haya alguna razón convincente para usar Java, exploraría Node.js y Express como una opción. Despegar es mucho más fácil, pero requiere más disciplina para lograr un diseño bueno y sostenible).

Puede usar Spring Boot para servir fácilmente las API utilizando Spring MVC. Ver JHipster para un ejemplo.

Para ponerlo en la web, esto puede ejecutarse directamente en una máquina virtual o empaquetarse en Docker.