Spring - szkielet służący do tworzenia aplikacji biznesowych, posiada wiele modułów, które ułatwiają pracę z bazami danych (Sprint Data), pozwalają na zabezpieczenie aplikacji (Spring Security) itd.
Maven - narzędzie, które pozwala na łatwiejsze dołączanie bibliotek do naszych aplikacji. Zamiast samemu ściągać i dołączać pliki, wystarczy wpisać odpowiednią zależność (nie wiem jak inaczej przetłumaczyć dependency), a Maven sam dociągnie i skonfiguruje odpowiednie pliki.
Tomcat - kontener aplikacji, który umożliwia uruchamianie aplikacji internetowych napisanych w Javie (przykładowo jakaś strona JSP)
MVC - w dużym skrócie jest to wzorzec, który zakłada podział aplikacji na Model (Logika biznesowa), Widoki (to co użytkownik "widzi") oraz Kontrolery (obsługa żądań użytkowników)