Pytania w tym artykule pojawiły się podczas szkolenia Tworzenie aplikacji internetowych z wykorzystaniem szkieletu aplikacyjnego Spring oraz Spring MVC realizowanego w dniach 9-13.02.2015r.
Czy spring wymaga serwera aplikacji – np jbossa?
Nie spring do działania nie wymaga serwera aplikacji. Zwykła aplikacja javowa używająca springa może być wywołana z poziomu linii poleceń, natomiast aplikacja webowa używająca frameworka spring potrzebuje kontenera serwletów np tomcat. W przypadku aplikacji webowej wymaganie dotyczące kontenera serwletów nie jest spowodowane przez samego springa, a przez specyfikę samej aplikacj webowej – działa na kontenerze serwletów także bez springa.
Jak spring wspiera transakcje bazodanowe?
Spring wspiera transakcje za pomocą api programistycznego klasy TransactionTemplate oraz deklaratywnie np za pomocą anotacji @Tranactional lub tagu
Czy da się dostać do serwisu springowego z poziomu zwykłego serwletu http ?
Tak, do serwisu springowego można się dostać poprzez statyczną metodę getWebApplicationContext(ServletContext sc) klasy WebApplicationContextUtils. Metoda ta zwraca instancję klasy WebApplicationContext, z której możemy pobrać interesujący nas serwis springowy. Uwaga: serwis ten musi być zadeklarowany na poziomie root contextu, nie może być zadeklarowany na pozimoe kontekstu dispatcher servletu.