Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用SpringMVC在JSP页面中显示一组对象_Java_Spring_Jsp_Spring Mvc - Fatal编程技术网

Java 使用SpringMVC在JSP页面中显示一组对象

Java 使用SpringMVC在JSP页面中显示一组对象,java,spring,jsp,spring-mvc,Java,Spring,Jsp,Spring Mvc,我是spring mvc和jstl的新手,我想在我的jsp页面中显示一组对象,这是我的两个类: Class Phase{ private Set<Tache> taches; } Class Tache{ private String name; } Class Controller{ @RequestMapping(value="/pages/index") public String pageProject(Model model){ model.addAt

我是spring mvc和jstl的新手,我想在我的jsp页面中显示一组对象,这是我的两个类:

Class Phase{
 private Set<Tache> taches;
}

Class Tache{
 private String name;
} 

Class Controller{
 @RequestMapping(value="/pages/index")
public  String pageProject(Model model){
    model.addAttribute("phaseList", phaseService.getAllPhases());
 return "/pages/createProject";
}

Class PhaseDAO{
 @Override
public List<Phase> getAllPhases() {
    Session session =  HibernateUtil.getSessionFactory().getCurrentSession();
    session.beginTransaction();
    return session.createQuery("from Phase").list();
}
}
Class PhaseService{
@Transactional
public List<Phase> getAllPhases() {
    // TODO Auto-generated method stub
    return phaseDao.getAllPhases();
}
}
类阶段{
私设环节;
}
阶级环节{
私有字符串名称;
} 
类控制器{
@请求映射(value=“/pages/index”)
公共字符串页面项目(模型){
addAttribute(“phaseList”,phaseService.getAllPhases());
返回“/pages/createProject”;
}
类相位{
@凌驾
公共列表getAllPhases(){
会话会话=HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
return session.createQuery(“from Phase”).list();
}
}
类相位服务{
@交易的
公共列表getAllPhases(){
//TODO自动生成的方法存根
返回phaseDao.getAllPhases();
}
}
在我的JSP中:

j:forEach items="phaseList" var="phase" <br>
    ${phase.taches} <br>
/j:forEach
j:forEach items=“phaseList”var=“phase”
${phase.taches}
/j:forEach
所以我想在jsp页面中显示每个阶段的链接


请帮帮我!

下面是获取jsp和dispaly中对象列表的示例

<c:forEach var="object" items="${phaseList}">

                            <tr>
                            <td> <c:out value="${status.attribute}"/></td>
                        </tr> 
                        </c:forEach>

您有一个阶段列表。每个阶段都有一个环节列表。简单的逻辑建议您需要两个循环:

<c:forEach var="phase" items="${phaseList}">
    <c:forEach var="tache" items="${phase.taches}">
        <tr>
            <td>${tache.name}</td>
        </tr> 
    </c:forEach>
</c:forEach>

${tache.name}

phaseList包含什么,或者您从
getAllPhases()
返回什么?getAllPhases()返回一组存储在数据库中的阶段您可以通过编辑的问题将其打印为
phaseList
,是否确定
phaseList
不为空。如果它不为空,则按如下方式打印
${phase}
而不是
${phase.taches}
它显示这个:com.model。Phase@689574我想我必须做两个循环,第一个循环显示阶段名称,第二个循环显示环节(任务)有属于这个阶段的名称…但我不知道如何…我就是这么做的,但它不起作用,它只是在页面中打印类似于此的内容[],我想显示每个阶段的环节名称:示例:阶段1:环节1名称:调查环节2名称:QOS阶段2:环节1名称:MS…检查两件事1-阶段列表有数据2-您在每个循环中使用了正确的属性。是的,它有数据,因为当我显示阶段名称时,它工作正常…但不是tac的名称他属于这个阶段