Atkarības ievadīšana (DI) ir dizaina modelis, kas novērš atkarību no programmēšanas koda, lai to varētu viegli pārvaldīt un pārbaudīt lietojumprogrammu. Atkarības injekcija padara mūsu programmēšanas kodu brīvi savienotu. Lai labāk izprastu DI, vispirms izprotam atkarības uzmeklēšanu (DL):
Atkarības meklēšana
Atkarības uzmeklēšana ir pieeja, kurā mēs iegūstam resursu pēc pieprasījuma. Var būt dažādi veidi, kā iegūt resursu, piemēram:
A obj = new AImpl();
Tādā veidā mēs iegūstam resursu (A klases gadījumu) tieši ar jaunu atslēgvārdu. Vēl viens veids ir rūpnīcas metode:
A obj = A.getA();
Tādā veidā mēs iegūstam resursu (A klases gadījumu), izsaucot statisko rūpnīcas metodi getA().
Excel noņemt pirmo rakstzīmi
Alternatīvi, mēs varam iegūt resursu, izmantojot JNDI (Java nosaukšanas direktorija saskarne), kā:
cik liels ir mans monitors
Context ctx = new InitialContext(); Context environmentCtx = (Context) ctx.lookup('java:comp/env'); A obj = (A)environmentCtx.lookup('A');
Var būt dažādi veidi, kā iegūt resursu, lai iegūtu resursu. Apskatīsim problēmu šajā pieejā.
Atkarības meklēšanas problēmas
Galvenokārt ir divas atkarības meklēšanas problēmas.
Atkarības injekcija
Atkarības ievadīšana ir dizaina modelis, kas novērš programmu atkarību. Šādā gadījumā mēs sniedzam informāciju no ārēja avota, piemēram, XML faila. Tas padara mūsu kodu brīvi savienotu un atvieglo testēšanu. Šādā gadījumā mēs rakstām kodu šādi:
class Employee{ Address address; Employee(Address address){ this.address=address; } public void setAddress(Address address){ this.address=address; } }
Šādā gadījumā Adrešu klases gadījumu nodrošina ārējs avots, piemēram, XML fails, izmantojot konstruktora vai iestatītāja metodi.
Divi veidi, kā veikt atkarības injekciju pavasara sistēmā
Pavasara sistēma nodrošina divus veidus, kā veicināt atkarību
- Pēc konstruktora
- Pēc setera metodes
Pavasara atkarības injekcijas gaidāmās tēmas
Atkarības injekcija, ko veic konstruktorsApskatīsim, kā konstruktors var ievadīt atkarību.
interfeiss java
Atkarības injekcija ar setera metodi
Apskatīsim, kā mēs varam ievadīt atkarību, izmantojot settera metodi.