所以我有模型实体Place
必须初始化一些关系。
现在我在控制器中使用自动处理的模型表单支持bean,如下所示:
@GetMapping(value = "/add")
public String addPlacePage(final Place place, Model model) {
model.addAttribute("services", serviceRepository.findAll())
.addAttribute("categories", categoryRepository.findAll())
.addAttribute("cities", cityRepository.findAll());
return "admin/place/addPlace";
}
Place place
是我的Spring(可能是Spring-MVC)。有没有办法提供工厂方法来支持bean?我不想在控制器中这样做。
我试图将工厂代码放在我的配置中:
@Bean
@Scope(value = "prototype")
public Place place() {
log.info("Creating place in FACTORY");
Place place = EntityFactory.emptyPlace();
return place;
}
但这不起作用。
答案 0 :(得分:0)
所以我在freenode上的#spring频道中提出了同样的问题,这要归功于用户< @_ ollie> 。为了做我想做的事,我应该在控制器中定义@ModelAttribute
方法,如下所示:
@ModelAttribute
private Place emptyPlace(){
log.info("Creating place in FACTORY");
Place place = EntityFactory.emptyPlace();
return place;
}