В моем весеннем загрузочном приложении у меня есть класс 'repo', который находится по имени класса
Class<?> repo = Class.forName("com.example.demo.repository." + modelName + "Repository");
, где modelName - строка.
repo.toString () возвращает
interface com.example.demo.repository.LaptopRepository
Я хочу иметь возможность использовать методы laptopRepository.findAll ().Я точно не знаю, какая модель у меня будет.Поэтому я не смог использовать аннотацию @Autowired вне метода.
Вместо этого я хочу использовать laptopRepository внутри метода, который принимает атрибут modelName.
@GetMapping("/administration")
public String getModelInstances(@RequestParam("modelName")String modelName, Model model) throws ClassNotFoundException {
Class<?> repo = Class.forName("com.example.demo.repository." + modelName + "Repository");
// @Autowired
// repo repoRepository;
model.addAttribute("objects", repoRepositories.findAll());
return "administration";
}