Es gibt einige Factory-Methoden, um die Beans programmatisch zu registrieren.
Sie können auch ConfigurableBeanFactory
von ConfigurableApplicationContext
verwenden und registerSingleton
verwenden, um die Bean des Klassentyps zu registrieren.
@SpringBootApplication
public class Application {
public static void main(String[] args) {
ConfigurableApplicationContext applicationContext=SpringApplication.run(Application.class, args);
ConfigurableBeanFactory beanFactory=applicationContext.getBeanFactory();
beanFactory.registerSingleton("testBean", new Application().new TestClass<String>());
TestClass<String> testObj=applicationContext.getBean(TestClass.class);
testObj.testMethod("hello");
}
public class TestClass<T>{
public void testMethod(T t) {
System.out.println("Test Method");
}
}
}