2012-01-05 8 views
6

Nie jestem jeszcze wystawiony na działanie Spring. Widziałem poniższy kod w jednym z samodzielnych projektów java, które mam w moim systemie. Czy możesz pomóc mi zrozumieć poniższy kod. Nie mogę zobaczyć pliku spring.xml w projekcie - czy jest to coś, co musi tam być i czego brakuje?Używanie ClassPathXmlApplicationContext w autonomicznej klasie Java

appContext = new ClassPathXmlApplicationContext(new String[] { 
     "classpath*:/META-INF/spring.xml", 
     "classpath*:myapplication-application-context.xml" 
     }); 

Odpowiedz

8

Składnia classpath* oznacza, że ​​wiosna będzie szukał ścieżki klasy dla wszystkich zasobów zwanych /META-INF/spring.xml i myapplication-application-context.xml, a który połączy je w kontekście. Obejmuje to przeglądanie plików JAR wewnątrz projektu, więc może nie być żadnego widocznego w głównym pliku projektu.

+0

Dzięki skaffman. Poluję na pliki :) –

6

Funkcjonalność rdzeń wiosny obraca się wokół ApplicationContext który jest „Central interfejs w celu zapewnienia konfiguracji dla aplikacji.” Interfejs ten jest realizowany przez ClassPathXmlApplicationContext dzięki której można wziąć kontekst definitins od ścieżce klas .Hence określić ścieżkę klasy * .

Jak wyjaśnia @skaffman, twoja aplikacja zostanie załadowana z definicji kontekstu w wyżej wymienionych plikach. tj. wszystkie komponenty Spring bean są inicjowane, a Injection Dependency Injection jest przeprowadzany zgodnie z wymaganiami.

Jeśli masz do czynienia z aplikacji internetowych, Wiosna ma odpowiedni kontekst aplikacji internetowych załadowany przez XmlWebApplicationContext

Powiązane problemy