logo

Priklausomybės injekcija pavasarį

  1. Priklausomybės injekcija pavasarį
  2. Priklausomybės paieška
  3. Priklausomybės injekcija

Priklausomybės įpurškimas (DI) yra dizaino modelis, kuris pašalina priklausomybę nuo programavimo kodo, kad būtų lengva valdyti ir išbandyti programą. Priklausomybės įpurškimas leidžia laisvai susieti mūsų programavimo kodą. Norėdami geriau suprasti DI, pirmiausia supraskime priklausomybės peržiūrą (DL):

Priklausomybės paieška

Priklausomybės peržiūra yra metodas, kai gauname išteklius po paklausos. Gali būti įvairių būdų gauti išteklių, pavyzdžiui:

 A obj = new AImpl(); 

Tokiu būdu išteklius (A klasės egzempliorius) gauname tiesiogiai pagal naują raktinį žodį. Kitas būdas yra gamyklinis metodas:

 A obj = A.getA(); 

Tokiu būdu gauname išteklius (A klasės egzempliorių) iškviesdami statinį gamyklos metodą getA().

Arba galime gauti išteklius iš JNDI („Java Naming Directory Interface“) kaip:

dvejetainė paieška
 Context ctx = new InitialContext(); Context environmentCtx = (Context) ctx.lookup('java:comp/env'); A obj = (A)environmentCtx.lookup('A'); 

Gali būti įvairių būdų, kaip gauti išteklių, kad gautumėte išteklių. Pažiūrėkime, kokia yra šio požiūrio problema.

Priklausomybės paieškos problemos

Iš esmės yra dvi priklausomybės paieškos problemos.

    sandari jungtisPriklausomybės paieškos metodas daro kodą glaudžiai susietą. Jei ištekliai pakeičiami, turime atlikti daug kodo modifikacijų.Nelengva išbandytiŠis metodas sukuria daug problemų bandant programą, ypač atliekant juodosios dėžės testavimą.

Priklausomybės injekcija

Priklausomybės įpurškimas yra dizaino modelis, pašalinantis programų priklausomybę. Tokiu atveju informaciją pateikiame iš išorinio šaltinio, pvz., XML failo. Dėl to mūsų kodas yra laisvai susietas ir lengviau išbandomas. Tokiu atveju kodą rašome taip:

 class Employee{ Address address; Employee(Address address){ this.address=address; } public void setAddress(Address address){ this.address=address; } } 

Tokiu atveju adreso klasės egzempliorių pateikia išorinis šaltinis, pvz., XML failas konstruktoriaus arba nustatymo metodu.

kaip atskleisti paslėptas programas

Du būdai, kaip atlikti priklausomybės injekciją pavasario sistemoje

Pavasario sistema suteikia du būdus, kaip sukelti priklausomybę

  • Pagal konstruktorių
  • Seterio metodu

Būsimos pavasario priklausomybės injekcijos temos

Priklausomybės įpurškimas pagal konstruktorių

Pažiūrėkime, kaip galime sukurti konstruktoriaus priklausomybę.


Priklausomybės įpurškimas seterio metodu

Pažiūrėkime, kaip galime įvesti priklausomybę seterio metodu.