Spring mvc 如何在带spring注释的控制器中返回多个@ModelAttribute? 我是在Spring MVC中将控制器转换成注释样式控制器的时候。
基本上,我是在旧式控制器simpleformcontroller中执行此操作的Spring mvc 如何在带spring注释的控制器中返回多个@ModelAttribute? 我是在Spring MVC中将控制器转换成注释样式控制器的时候。,spring-mvc,Spring Mvc,基本上,我是在旧式控制器simpleformcontroller中执行此操作的 protected Map referenceData(HttpServletRequest request) throws Exception { Map referenceData = new HashMap(); List<ItemVo> lstItem1 = eqrManager .searchAllEqptCondQualItems("A1", "BOXES")
protected Map referenceData(HttpServletRequest request) throws Exception
{
Map referenceData = new HashMap();
List<ItemVo> lstItem1 = eqrManager
.searchAllEqptCondQualItems("A1", "BOXES");
List<ItemVo> lstItem2 = eqrManager
.searchAllEqptFullQualItems("A2", "CANNED_GOODS");
referenceData.put("BOX_ITEMS", lstItem1);
referenceData.put("CANNED_ITEMS", lstItem2);
return referenceData;
}
protected Map referenceData(HttpServletRequest请求)引发异常
{
Map referenceData=new HashMap();
列表lstItem1=eqrManager
.searchAllEqptCondQualItems(“A1”、“方框”);
列表lstItem2=eqrManager
.searchAllEqptFullQualItems(“A2”,“罐头食品”);
参考数据放置(“框中项目”,第1项);
参考数据放置(“罐装项目”,第2项);
返回引用数据;
}
在注释中,我做了如下操作:
@ModelAttribute("BOX_ITEMS")
public List<ItemVo> populateCondEQRItems() {
List<ItemVo> lstCondQual = eqrManager
.searchAllEqptCondQualItems("A1", "BOXES");
return lstCondQual;
}
@ModelAttribute("CANNED_ITEMS")
public List<ItemVo> populateFullEQRItems() {
List<ItemVo> lstFullQual = eqrManager
.searchAllEqptFullQualItems("A2", "CANNED_GOODS");
return lstFullQual;
}
@modeldattribute(“框中项目”)
公共列表PopulateItems(){
列表lstCondQual=eqrManager
.searchAllEqptCondQualItems(“A1”、“方框”);
返回lstCondQual;
}
@ModelAttribute(“罐装物品”)
公共列表populateFullEQRItems(){
列表lstFullQual=eqrManager
.searchAllEqptFullQualItems(“A2”,“罐头食品”);
返回完全相等;
}
我的问题是,有没有一种方法可以在一个方法中返回所有属性,而不是
必须创建多个@ModelAttribute?在我的例子中,我需要注释2方法?如果我需要呢
3、我是否也应该创建3个带注释的方法?规则很明确 如果需要多个模型属性,将模型作为输入参数
祝你好运 规则很明确 如果需要多个模型属性,将模型作为输入参数 祝你好运 我看不清楚 好的!我是说@modeldattribute可以放在方法级和方法参数级。它的行为会有所不同,这取决于你把它放在哪里
@ModelAttribute(user)
public void preRender(Model model) {
/* this method will be invoked before resolving @ModelAttribute Method Parameter i.e. before invoking render/processCreate method */
/* codes are available to CreateUser.jsp if render request comes */
/* codes are available to CreateUser.jsp if validation fails */
model.addAttribute("countryCodes", I18Nservice.getCountryISOCodes());
model.addAttribute("languageCodes", I18Nservice.getLanguageISOCodes());
}
public String renderCreate(@ModelAttribute(value="user") User user) {
return "/user/create";
}
@Override
public String processCreate(@ModelAttribute(value="user") User user, BindingResult result) {
if(result.hasErrors() {
return "/user/create";
}
securityService.createUser(user);
return "/user/detail/user.getId()";
}
如果您是Spring MVC 3 arena的新手:
@ModelAttribute(user)
public void preRender(Model model) {
/* this method will be invoked before resolving @ModelAttribute Method Parameter i.e. before invoking render/processCreate method */
/* codes are available to CreateUser.jsp if render request comes */
/* codes are available to CreateUser.jsp if validation fails */
model.addAttribute("countryCodes", I18Nservice.getCountryISOCodes());
model.addAttribute("languageCodes", I18Nservice.getLanguageISOCodes());
}
public String renderCreate(@ModelAttribute(value="user") User user) {
return "/user/create";
}
@Override
public String processCreate(@ModelAttribute(value="user") User user, BindingResult result) {
if(result.hasErrors() {
return "/user/create";
}
securityService.createUser(user);
return "/user/detail/user.getId()";
}
如果您是Spring MVC 3 arena的新手:
最后两个方法中没有modelAttribute对象。如果你用@modeldattribute注释一个方法,它将在解析@modeldattribute注释的方法参数之前被调用。您好,请原谅我根据您所说的理解,因为我不能清楚地理解它。我从某个地方的链接中读到,如果您用@modeldattribute注释一个方法,这将看起来像simpleformcontroller的referencedata工作流?我并没有真正将它用作@modeldattribute方法参数。谢谢。在最后两个方法中没有modelAttribute对象。如果你用@modeldattribute注释一个方法,它将在解析@modeldattribute注释的方法参数之前被调用。您好,请原谅我根据您所说的理解,因为我不能清楚地理解它。我从某个地方的链接中读到,如果您用@modeldattribute注释一个方法,这将看起来像simpleformcontroller的referencedata工作流?我并没有真正将它用作@modeldattribute方法参数。谢谢。嘿,它很有魅力。。我开始喜欢这种注释式的配置。。谢谢,谢谢..嘿,它很有魅力。。我开始喜欢这种注释式的配置。。谢谢,谢谢。。。非常感谢。我开始喜欢这个网站了。。希望你能一直帮助像我这样的新手。。。非常感谢。我开始喜欢这个网站了。。希望你能一直帮助像我这样的新手。。