Topic: 如何将参数传递给servlet???

  Print this page

1.如何将参数传递给servlet??? Copy to clipboard
Posted by: 索萧
Posted on: 2004-12-15 11:00

我还是学生,不懂struts(努力),我想自己用servlet+javabean+jsp实现三层架够,但有一个问题,还请大家指教.
就是如何在servlet中获得jsp页面的参数(不是form提交的参数),比如说在论坛的首页进入论坛的一个版块时(一般都是一个链接),用servlet获得版面的ID等参数,然后在servlet中调用javabean获得这个版块的某一页帖子内容.再转发到相应的jsp页面显示.但不知道如何获得版面的ID等参数.
另外就是servlet的转发和重定向问题 ,转发速度较快,重定向较慢,但是转发无法显示响应url,不能刷新等.如果做一个论坛之类的东西,是不是基本上不用转发?还是有其他的办法各位给点建议吧?

2.Re:如何将参数传递给servlet??? [Re: 索萧] Copy to clipboard
Posted by: 234aini
Posted on: 2004-12-15 12:35

我也正在想做,,
想法是先要求登陆,然后将登陆的名字当做属性天加的session当中。
然后每次都从session当中读取登陆名字,
中午要试一下!

3.Re:如何将参数传递给servlet??? [Re: 索萧] Copy to clipboard
Posted by: chengbd
Posted on: 2004-12-15 13:35

首先,jsp最后生成的还是servlet,所以二者传递参数的方式是一样的,手边没有例子,建议楼主找本servlet的入门书,看看就知道了,我想学东西还是系统地学习一下好。
其次,您说“转发速度较慢,重定向较快”。错,转发(forward)时共用了同一个原来的request对象,而重定向是生成了一个新的request。因为生成新的对象,所以还是重定向的方法慢。所以,struts的缺省页面发送方式是“转发”。

4.Re:如何将参数传递给servlet??? [Re: 索萧] Copy to clipboard
Posted by: 索萧
Posted on: 2004-12-15 17:42

谢谢
我写错了
转发速度没重定向快,重定向是在服务器内实现的,而重定向要向浏览器发送302后再到目的页面

5.Re:如何将参数传递给servlet??? [Re: 索萧] Copy to clipboard
Posted by: 索萧
Posted on: 2004-12-15 17:52

还请斑竹给个例子好吗?
我在看core servlet jsp里面的例子都是用form提交的,我想就是在到目的页面前通过servlet的处理,再将结传给jsp页面。象进入论坛的一个版块时,有一个链接进入,我想通过servlet获得用户想进入什么版块(获得ID 等参数),在servlet中调用javabean返回结果给jsp页面。就是想知道servlet如何知道用户点击的是哪个版快。

6.Re:如何将参数传递给servlet??? [Re: 索萧] Copy to clipboard
Posted by: dennisjl
Posted on: 2004-12-16 16:39

传递参数的方式一般就是表单(可以用隐藏字段)与 URL参数传递。
所有的变量一定是从页面传递给servlet(request到此结束), 然后再由servlet返回结果给页面。你可以通过action指定你的servlet, 如:<form action="yourServlet">。
你可以将用户想进入的板块Id用上述两种方式随便一种传递到你的servlet中,在serlvet中的doGet/doPost方法里用request取得变量就可以了。

最后,我建议你用一些框架会更快捷与稳定。 不过使用servlet+jsp这种方式有助于你更好地理解web的运作方式,只要你的老板不会抱怨你工作的效率。

7.Re:如何将参数传递给servlet??? [Re: 索萧] Copy to clipboard
Posted by: xhxasdf
Posted on: 2004-12-23 10:54

jsp 页面写参数名称
servlet里面
用request.getParameter("参数名称")
实体类.set字段名称(request.getParameter("futuresDate"));

就这样接受


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923