如何在Spring中将属性设置为带注释的控制器?
答案 0 :(得分:6)
听起来你想要避免@Autowired注释,但你确实想要使用注释式SpringMVC控制器。没有理由你必须同时使用它们。您可以像在任何其他情况下一样在XML中实例化bean。我将在下面给你举个例子。不过,我鼓励你考虑至少使用@Autowired控制器,如果没有其他服务。它使他们的代码更容易创建和阅读,只要你只从控制器使用它,它就不会导致任何尴尬,令人困惑的相互依赖。
@Controller
public class MyController {
private String field;
public void setField(String field) {
this.field = field;
}
@RequestMapping("/Wooo")
public String handler(ModelMap model) {
model.addAttribute("thefield",field);
return "fieldViewer";
}
}
然后在XML中:
<bean class="com.mything.MyController">
<property name="field">waffles</property>
</bean>
<mvc:annotation-driven/>
答案 1 :(得分:1)
使用@Autowired
内的@Qualifier
和Controller
注释;与您需要使用注释自动装配的任何其他类相同。务必将组件扫描放入上下文XML中。