jsp传值给servlet问题求解??????????????????????????????????????????????

u010204508 2013-05-26 04:47:44
jsp中,前提是不用表单,不用超链接,因为我在jsp中是不需要点击就直接传值过去的,我是这样想的,开始我用
response.sendRedirect("CostLogMgrServlet?pageSize=9&pageNow=2");
在servlet:
int pageSize=Integer.parseInt(request.getParameter("pageSize"));
int pageNow=Integer.parseInt(request.getParameter("pageNow"));
结果是null;


request.setAttribute("pageSize", "9");
request.setAttribute("pageNow", "2");
servlet中
int pageSize=(Integer)request.getAttribute("pageSize");
int pageNow=(Integer)request.getAttribute("pageNow");
也是null;

我想用session来做
session.setMaxInactiveInterval(3600);
session.setAttribute("pageSize", "9");
session.setAttribute("pageNow", "2");
servlet中
HttpSession session=request.getSession(true);
int pageSize=(Integer)session.getAttribute("pageSize");
int pageNow=(Integer)session.getAttribute("pageNow");
结果还是null;
是不是我哪里写错了,
还有就是我用测试了下使用超链接
jsp中:
a
b
这个我是用的变量;
<a href="CostLogMgrServlet?a="+a+"&b="+b+""></a>
servlet中
int a=Integer.parseInt(request.getParameter("a"));
intb=Integer.parseInt(request.getParameter("b"));

结果a,b还是null;
郁闷了!
求各位知道的解释下;
...全文
122 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
u010204508 2013-05-26
  • 打赏
  • 举报
回复
jsp中: request.setAttribute("pageSize", 9); request.getRequestDispatcher("CostLogMgrServlet").forward(request, response); servlet中 System.out.println("pageSize:"+request.getAttribute("pageSize")); 结果运行一直报错,貌似死循环一样的不停的跑。
u010204508 2013-05-26
  • 打赏
  • 举报
回复
引用 4 楼 rainbowsix 的回复:
我觉得搂主还是搞本<servlet开发指南> 好好看看,搞清楚jsp 和 servlet的工作机制再说吧。 就算有人告诉你怎么弄了,你也是知其然不知其然,换个问题又搞不定了。
恩,我最近才开始学servlet,就是jsp不太会。
u010204508 2013-05-26
  • 打赏
  • 举报
回复
引用 2 楼 fangmingshijie 的回复:
简单点说用response.sendRedirect()地址栏url没变,所以url传参接受不到 改用request.getRequestDispatcher().forward(request,response),这个可以传参
我用 了没用,还是Null,我是要求我的jsp不点击的情况下就传值给servlet。
无聊找乐 2013-05-26
  • 打赏
  • 举报
回复
我觉得搂主还是搞本<servlet开发指南> 好好看看,搞清楚jsp 和 servlet的工作机制再说吧。 就算有人告诉你怎么弄了,你也是知其然不知其然,换个问题又搞不定了。
  • 打赏
  • 举报
回复
同楼上。。。response.sendRedirect()你这是用的重定向,参数跟本不可能传过去,结果当然是空值了。用 request.getRequestDispatcher().forward(request,response),就可以了,这样把参数也捎带过去了。。。
  • 打赏
  • 举报
回复
简单点说用response.sendRedirect()地址栏url没变,所以url传参接受不到 改用request.getRequestDispatcher().forward(request,response),这个可以传参
u010204508 2013-05-26
  • 打赏
  • 举报
回复
补充下,那个a,b我是通过在jsp中计算来的,我怀疑是算错了,我就把int a=2;int b=3;结果还是不行;没辙了!

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧