SORU
28 EYLÜL 2010, Salı


Nasıl bağımlılıkları enjekte etmek için Bahar aylarında kendini örneği bir nesne içine?

Hadi bir sınıf var ki:

public class MyClass {
    @Autowired private AnotherBean anotherBean;
}

O zaman bu sınıfın bir nesne (veya başka bir çerçeve bu sınıfın örneğini oluşturmuş) yarattık.

MyClass obj = new MyClass();

Hala bağımlılıkları enjekte etmek mümkün mü? Gibi bir şey

applicationContext.injectDependencies(obj);

(Google Guice böyle bir şey sanırım)

CEVAP
28 EYLÜL 2010, Salı


Bu AutowireCapableBeanFactory autowireBean() yöntemi kullanarak yapabilirsiniz. Bu keyfi bir nesne geçirmek ve Bahar kendisi yarattı, ve çeşitli autowiring parçaları geçerli olacak bir şey gibi davranın.

AutowireCapableBeanFactory, sadece autowire: tutmak

private @Autowired AutowireCapableBeanFactory beanFactory;

public void doStuff() {
   MyBean obj = new MyBean();
   beanFactory.autowireBean(obj);
   // obj will now have its dependencies autowired.
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Charles Renaud

    Charles Rena

    10 Kasım 2007
  • KSI

    KSI

    25 Temmuz 2009
  • Tinkernut

    Tinkernut

    28 Aralık 2006