Groovy Bean definíciók
1. Áttekintés
Ebben a rövid cikkben arra fogunk koncentrálni, hogy miként használhatjuk a Groovy-alapú konfigurációt a Java Spring projektjeinkben.
2. Függőségek
Mielőtt elkezdenénk, hozzá kell adnunk a függőséget a sajátunkhoz pom.xml fájl. A Groovy fájlok összeállítása érdekében hozzá kell adnunk egy plugint is.
Először egészítsük ki Groovy függőségét pom.xml fájl:
org.codehaus.groovy groovy 2.5.10
Most tegyük hozzá a plugint:
// ... org.codehaus.gmavenplus gmavenplus-plugin 1.9.0 addSources addTestSources generál Stubs fordítás generálTesztStubok fordításTesztek eltávolításStubok eltávolításTesztStubok
Itt a gmavenplus-plugint használjuk az összes cél eléréséhez.
E könyvtárak legújabb verziói megtalálhatók a Maven Central oldalon.
3. Bab meghatározása
A 4. verzió óta a Spring támogatja a Groovy-alapú konfigurációkat. Ez azt jelenti A Groovy osztályok legitim tavaszi babok lehetnek.
Ennek szemléltetésére definiálunk egy babot a szokásos Java konfigurációval, majd ugyanezt a babot a Groovy segítségével. Így láthatjuk a különbséget.
Hozzunk létre egy egyszerű osztályt néhány tulajdonsággal:
public class JavaPersonBean {private String keresztnév; privát karakterlánc vezetéknév; // szabványos mérőeszközök és beállítók}
Fontos megjegyezni a getterekről / beállítókról - ezek kulcsfontosságúak a mechanizmus működéséhez.
3.1. Java konfiguráció
Ugyanazt a babot konfigurálhatjuk Java alapú konfigurációval:
@Configuration public class JavaBeanConfig {@Bean public JavaPersonBean javaPerson () {JavaPersonBean jPerson = new JavaPersonBean (); jPerson.setFirstName ("John"); jPerson.setLastName ("Doe"); return jPerson; }}
3.2. Groovy konfiguráció
Most láthatjuk a különbséget, amikor a Groovy segítségével konfiguráljuk a korábban létrehozott babot:
bab {javaPersonBean (JavaPersonBean) {firstName = 'John' lastName = 'Doe'}}
Vegye figyelembe, hogy a bab konfigurációjának meghatározása előtt importálnunk kell a JavaPersonBean osztály. Is, benne bab blokkolja, annyi babot határozhatunk meg, amennyire szükségünk van.
Területeinket privátként és bár Úgy tűnik, hogy a Groovy úgy néz ki, mintha közvetlenül hozzájuk férne volna hozzá, a megadott getterek / beállítók használatával.
4. További babbeállítások
Az XML és a Java alapú konfigurációkhoz hasonlóan, nemcsak a babot tudjuk konfigurálni.
Ha beállítanunk kell egy álnév babunk számára könnyen megtehetjük:
registerAlias ("sávokBean", "sávok")
Ha meg akarjuk definiálni a babot hatókör:
{bab -> bab.scope = "prototípus"}
A babunk életciklus-visszahívásainak hozzáadásához a következőket tehetjük:
{bab -> bean.initMethod = "someInitMethod" bean.destroyMethod = "someDestroyMethod"}
A babdefinícióban megadhatjuk az öröklődést is:
{bab-> bab.parent = "someBean"}
Végül, ha néhány korábban definiált babot kell importálnunk egy XML konfigurációból, akkor ezt a importBeans ():
importBeans ("somexmlconfig.xml")
5. Következtetés
Ebben az oktatóanyagban láthattuk, hogyan hozhatunk létre tavaszi Groovy babkonfigurációkat. Kitértünk további tulajdonságok beállítására a babunkon, például álneveiken, hatókörükön, szülõin, az inicializálási vagy megsemmisítési módszereken, valamint az egyéb XML által definiált babok importálásának módján.
Bár a példák egyszerűek, kiterjeszthetők és felhasználhatók bármilyen típusú Spring konfiguráció létrehozásához.
A cikkben használt teljes példakód megtalálható a GitHub projektünkben. Ez egy Maven projekt, ezért képesnek kell lennie arra, hogy importálja és futtassa úgy, ahogy van.