与Jstl标签混淆c:forEach items

时间:2017-09-17 14:31:29

标签: java spring jstl

我对c:forEach items =" $ {} JSTL标记感到困惑。 我有一个项目类别,填写了一些文章T想按类别显示这些文章,我无法弄清楚如何在jsp文件中这样做,知道之前的所有内容都完美无缺。 我可以使用c显示类别:forEach items =" $ {categories},以及包含c:forEach items =" $ {articles}的文章,现在我想显示属于一个类别的文章,我试过c:forEach items =" $ {categorie.articles}但没有。

DAOImpl

// Articles by category
    @Override
    public List<Article> articleParCategorie(Long idCat) 
    {
        Query req = em.createQuery("select a from Article a where a.categorie.idCategorie=:x");
        req.setParameter("x", idCat);
        return req.getResultList();
    }

控制器

// Action for articles by category
                    @RequestMapping(value="/ConsultCat")
                    public String ArtParCat(Long idCat, Model model)
                    {
                        model.addAttribute("categories", metier.listCategories());
                        model.addAttribute("articles", metier.articleParCategorie(idCat));
                        return "ArticleParCat";
                    }

JSP文件 这是我试过的,它返回视图但没有类别或文章

<c:forEach items="${categorie.articles}" var="cat">
                                <div class="col align-center">

                                    <!-- Le nom de la catégorie a partir de la base donnée -->
                                            ${cat.article.titre}

                                            <!-- La description de la catégorie a partir de la base donnée -->                  
                                            <p>${cat.description}</p>


                                </div>
                                </c:forEach>

1 个答案:

答案 0 :(得分:0)

Class类和Class Article中的代码,以及视图ListCategories中的代码(完美地返回类别)。

分类:

@Entity
@Table(name="ARTICLE")
public class Article implements Serializable
{
    @Id
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private Long idArticle;
    private String titre;
    private String texte;
    private Date date;
    private byte [] photo;

    @ManyToOne
    @JoinColumn(name="ID_CAT")
    private Categorie categorie;

文章类

<!-- Les catégories -->
                            <div class="flex flex-3">

                                <c:forEach items="${categories}" var="cat">
                                <div class="col align-center">

                                    <div class="image round fit">

                                            <!-- L'image de la catégories a partir de la base donnée -->
                                            <img src="photoCat?idCat=${cat.idCategorie}">
                                    </div>
                                            <!-- Le nom de la catégorie a partir de la base donnée -->
                                            ${cat.nomCategorie}

                                            <!-- La description de la catégorie a partir de la base donnée -->                  
                                            <p>${cat.description}</p>



                                            <!-- Les bouttons supprimer modifier qui devront être visible qu'aux adminisrateurs -->
                                            <a href="ConsultCat?idCategorie=${cat.idCategorie}" class="btn btn-default" id="Goto">See more</a>

                                            <a href="editCat?idCat=${cat.idCategorie}" class="btn btn-default" id="edit">edit</a>                                           
                                            <a href="suppCat?idCat=${cat.idCategorie}" class="btn btn-default" id="delete">delete</a>






                                </div>
                                </c:forEach>

类别列表查看:

rescue