Cześć,
jako prace dyplomową robię aplikacje webową. Do frontu chcę użyć html, css, js (jQuery). Natomiast do backendu Javę. Tutaj pojawia się dylemat ponieważ nie do końca rozumiem jak to połączyć. Wcześniej używałem od strony backendu PHP i moje myślenie jest troche bardziej PHPowe dlatego nie rozumiem jak to można połączyć w JAVIE.
Html+css+js daje mi statyczny content, który chciałbym zdynamizować poprzez użycie javy i dostęp do bazy danych. I tu nasuwają mi się następujące pytania:
1. czy, żeby wyodrębnić powtarzające się elementy strony takie jak np. header, footer czy navigacje i potem je tylko wczytywać w pliku .html musiałbym użyć frameworka typu angular czy react, czy da się to zrobić prościej (w PHP było to banalnie proste, używałem też wordpress'a gdzie było to już wogóle robione za pomocą jednej funkcji). Chodzi o to, że jeżeli wprowadze zmiany w kodzie html np. headera to żebym nie musiał ręcznie edytować wszystkich plików .html.
2. Jak połączyć dane wrzucane przez użytkownika np. w formularzu z kodem javy i jak odpowiedź z bazy danych przekazać do widoku. Tzn. to co wydaje mi się najbardziej zbliżone do PHP to współpraca Servletów oraz JSP. Za pomocą servletu biore dane z formularza, łączę się z bazą danych, uzyskuje odpowiedź i wyświetlam ją użytkownikowi za pomocą jsp. Jednak z tego co wiem jest to technologia przestarzała, która ma wady (miesza warstwe frontu z back-endem). Czego powinienem użyć?
Bardzo proszę o takie przybliżenie technologii, których się teraz używa i wytłumaczenie jak to działa. Może być też link do strony, gdzie jest to tłumaczone. Sam już googlowałem i szukałem, ale na forach to każdy tylko pisze jakie jsp jest złe i nie pisze jak powinno to wyglądać, a artykułów fajnie tłumaczących i sprawdzających technologie (tak jak np. Pan Mirosław w filmie pt. "Technologie tworzenia witryn. Technik informatyk. Egzamin EE.09 / E.14") nie znalazłem. Wyczytałem też, że można to robić restem, ale zastanawiam się czy wtedy niezbędny jest angular albo react. Ogólnie nie mam tak dużo czasu, żeby ryzykować i uczyć się frameworka teraz, gdy mam ograniczony czas na zrobienie aplikacji.
Upraszczając pytanie. Jeżeli chcę zrobić przeglądarkową aplikację, która od backendu działa w Javie to co powinienem użyć?
Proszę o różne alternatywy (Przegląd technologii), a nie odpowiedzi w stylu "ja używam PHP albo JSP". Porównanie różnych możliwości, krótki ich opis lub linki.