Я автоматически подключил ApplicationContext в моем классе RestController, так как мне нужно было создать прототип bean-компонента для каждого полученного запроса.
Чтобы создать bean-компонент, я попробовал context.getBean (xx), но в контексте нет метода getBean () в списке. Есть ли способ получить компоненты прототипа класса в моем классе RestController. Я запускаю это приложение как Spring boot.
пример кода здесь:
@RestController
@RequestMapping("/Restcompare")
public class CompareService {
@Autowired
private ApplicationContext context;
private Comparator comparator;
@RequestMapping("/compare")
public String vcompare(@RequestParam(value="pre", defaultValue="")
String pre, @RequestParam(value="post", defaultValue="") String post){
comparator = context.getBean(Comparator.class); //Error here
}
}
Обновление:
Решение. Каким-то образом IDE импортировала другой ApplicationContext, отличный от Spring framework. Исправление импорта в org.springframework.context.ApplicationContext
устранило проблему.