为了减少JSP页面的代码,我用servlet传值到javabean,再传值到jsp。为什么是空值?

servlet里是set数据到javabean。jsp里gei数据。servlet跳转用response.sendRedirect到JSP页面。是不是这个问题?... servlet里是set数据到javabean。jsp里gei数据。servlet跳转用response.sendRedirect到JSP页面。是不是这个问题? 展开
 我来答
mading314
2012-08-14 · TA获得超过863个赞
知道小有建树答主
回答量:355
采纳率:100%
帮助的人:350万
展开全部
估计你对页面地址跳转理解存在一些问题。
在JAVAWEB里面,页面地址跳转有两种方式:
1、消息转发
消息转发的代码是:
request.getRequestDispatcher("/pages/ddd.jsp").forward(request,response);
用这种方法,在当前页面通过request配置的值(request.setAttribute(key,value))在跳转的地址页面能够直接使用(request.getAttribute(key))。
2、页面重定向
response.sendRedirect("pages/ddd.jsp"),页面重定向后,你在当前页面的request设置的任何属性(request.setAttribute(key,value))在跳转到的地址页面都不能访问的。

要解决你的问题,你得改用消息转发。
追问
现在用的是消息转发,还是NULL。

用户姓名: name="username">

这事JSP代码。
在servlet里链接数据库等操作,传值到JAVAbean。javabean里只有get、set方法和封装的变量、构造方法。jsp显示还是空值。不解。。。。
追答
你应该在Servlet里面把信息保存在request对象里面,而不是在页面用标签实例化。
另外,你把实例化标签里面的scope写成application做什么?一般建议使用pageContext,或者request(默认是pageContext,也就是scope可以不写的)。

你重新实例化了怎么会出来值呢?它就没有调用你的后台设置的bean实例,不出来值才是正确的。
liujie151376
2012-08-14 · TA获得超过411个赞
知道小有建树答主
回答量:270
采纳率:0%
帮助的人:198万
展开全部
servlet跳转用request.getRequestDispatcher()方法才能把你的数据传到你想传到的页面上
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
avaf6r
2012-08-14 · 超过10用户采纳过TA的回答
知道答主
回答量:62
采纳率:0%
帮助的人:27.3万
展开全部
你好好看看转发和重定向的区别就明白啦
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式