2017-05-24 51 views
2

我无法将模型中的数据绑定到视图。我正在使用弹簧引导。目前,我得到它的工作是这样的:绑定模型数据以查看 - 春天

@RequestMapping("/members") 
public ModelAndView getMembers() { 
    List<Member> members = memberDao.getMembers(); 
    ModelAndView model = new ModelAndView("member/membersList"); 
    model.addObject("members", members); 
    return model; 
} 

这让我使用

<c:forEach items="${members}" var="member" varStatus="memberStatus"> 
    <tr> 
    <td>${member.id}</td> 
    <td>${member.firstName}</td> 
    <td>${member.lastName}</td> 
    </tr> 
</c:forEach> 

我试图得到它返回一个字符串,而不是ModelAndView的工作访问模型属性。事情是这样的:

@RequestMapping("/members") 
public String getMembers(ModelAndView model) { 
    List<Member> members = memberDao.getMembers(); 
    model.addObject("members", members); 
    return "member/membersList"; 
} 

我不是很确定关于JSP中的Java端或commandName使用@ModelAttribute。那是我需要看的东西吗?有人可以请指教什么是错的?

添加控制器代码:JSP要呈现

@Controller 
public class MemberController { 

@Autowired 
private MemberDAO memberDao; 

@RequestMapping("/members") 
public ModelAndView getMembers() { 
    List<Member> members = memberDao.getMembers(); 
    ModelAndView model = new ModelAndView("member/membersList"); 
    model.addObject("members", members); 
    return model; 
} 
} 
+0

向我们展示控制器代码? – Arpit

回答

0

应添加对象为Model属性:

@RequestMapping("/members") 
public String getMembers(Model model) { 
    List<Member> members = memberDao.getMembers(); 
    model.addAttribute("members", members); 
    return "member/membersList"; 
} 
0

你的第一种方法应该工作。如果没有请检查您是否在你的JSP已经@taglib声明,例如:

<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 

如果返回的字符串(如在你的第二个例子:“会员/ membersList”)春季将设法找到并显示JSP “members”位置内的membersList.jsp的名称。在这种情况下,参数不会传递给JSP。