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

  • Chriselle Lim

    Chriselle Li

    26 Ocak 2008
  • Liam Underwood

    Liam Underwo

    19 Mayıs 2009
  • thewinekone

    thewinekone

    17 Aralık 2005