您的位置:首页 > 其它

晕,真不想说啥了!---关于前台显示集合中对象的问题!---

2011-02-16 12:05 519 查看
真是郁闷,这个问题纠结了我快一天了......

问题是这样的:

    

    在实体类中,定义了N个字段,字段名如:Book_Id,Book_Name......之类的,

    从数据库中查出数据,放入对象,放入集合,都没有问题

    ................

    开始前台显示............

    用JSTL循环servlet传过来的集合,EL标签调用对象属性时..问题出现了..........

    错误如下:

        严重: Servlet.service() for servlet jsp threw exception
        javax.el.PropertyNotFoundException

        : Property 'Id' not found on type com.tianhao.lovebook.dto.BooksDTO

    报找不到ID!!!!

唉,真是够郁闷的,好在问题解决了,也不知道是什么具体原因,只是可以显示了

解决方法如下:

    

    将实体类中的属性字段,改为首字母小写,格式如:id,name,iSBN................

    EL标签中改为    ${名称["id等字段名"]}

到此.....算是问题解决................

---------------------------------------------------------------------------------------------------------------------------------

真的很郁闷............

我还以为上次做完项目,因为时间长没敲代码的原因,而写错了,,我真的差点推翻以前学的东西!!!!!

呵呵..解决了就好......

---------------------------------------------------------------------------------------------------------------------------------

PS:

    真的发现 脑子不好使了呢 写一个备忘吧

    备忘内容:    

        显示五行数据,每行显示三个

        *    *    *

        *    *    *

        *    *    *

        *    *    *

        *    *    *

       注:*号为显示数据的位置

代码如下:

    //定义行数,5行,每次循环,加一

    <c:forEach var="i" begin="0" end="4" step="1">
<tr>

    //负责显示三个数据,起始值是行数乘以每行要显示的个数,结束值是,起始值加上每行显示的个数-1

    //最后总结为

    //起始值=行数*每行显示

    //结束值=行数*每行显示+每行显示-1
<c:forEach var="j" begin="${i*3}" end="${i*3+2}" step="1">

    //获取集合中的对象

    //booklist为从servlet接收的集合,就是显示的内容

    //从中取出要显示的对象,取出方法,根据集合类型而定,本次备忘,我用的是LIst,所以用下标的方式取出
<c:set var="temp" value="${booklist[j]}"></c:set>

    //判断是否为空(可以没有这一步的,就是当时调错的时候,添上去的)
<c:if test="${temp!=null}">

    //显示的内容
<td>
<table cellspacing=0 cellpadding=0 width=180 background=images/bg.jpg border=0>
<tbody>
<tr>
<td valign=bottom height=30>
  
<a href="displayBook.jsp?id=${temp['id'] }">    

      //到EL标签部分了,要用消息啊!!!!
${temp['name'] }</a>
</td>
</tr>
<tr align=middle>
<td height=120>
<a href="displayBook.jsp?id=${a }">
<img height=110 src="b" width=90 border=0 />
</a>
</td>//好了,表格TD结束
</tr>//表格TR结束
</tbody>
</table>//表格结束
<br />
</td>

    //显示内容结束
</c:if>
</c:forEach>
</tr>
</c:forEach>

---------------------------------------------------------------------------------------------------------------------------------

好了结束

2010年8月21日 11:28:44

By:Frank
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐