关于JSP中javaBean的问题。

我正在学习JSP,我用JSP开发了一个查询系统,但是数据库中明明有要查找的东西,但就是查不到,经过我的排查,发现问题出在javaBean上。填写的关键字提交给servle... 我正在学习JSP,我用JSP开发了一个查询系统,但是数据库中明明有要查找的东西,但就是查不到,经过我的排查,发现问题出在javaBean上。填写的关键字提交给servlet控制器,servlet调用查询类查询,返回结果存放在一个Vector对象中,然后将这个Vector对象放在一个javaBean中以便将数据传到结果页面显示出来,在结果页面,我使用<jsp:useBean>创建了那个javaBean的实例,Scope为session,问题就出在这里,经过我检测,发现,Vector对象在servlet中时还有数据,但到JSP页面里时就变成了null,也就是说,javaBean中的数据丢失了,难怪总是查不到信息。这是怎么回事。我的javaBean的scope是session,按理数据在整个会话期间都有效。 展开
 我来答
百度网友80e0f3614
2007-08-12 · TA获得超过661个赞
知道答主
回答量:55
采纳率:0%
帮助的人:103万
展开全部
这是servlet和jsp的通信问题.
在jsp中使用useBean动作实际上是创建了一个新的javabean,里面当然是空的了.
在servlet中应该确实得到了Vector,但是不知道你的页面转向是怎么做的,如果只是想在jsp页面中显示,建议你把得到的查询结果放在request里面,然后利用request转向到jsp页面,jsp页面中使用脚本或者EL表达式直接取值.

servlet中:
...
Vector data = 查询方法();
//将data放在请求里
request.setAttribute("data",data);
//转向到jsp,如果结果在请求中一定要这样转向
request.getRequestDispatcher("jsp页面地址").forward(request,response);

jsp页面中:
<% Vector data = (Vector)request.getAttribute("data");%>
或者直接用EL表达式 ${requestScope.data},这个需要用<c:foreach>来遍历
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式