欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jsp页面中获取servlet请求中的参数的办法详解

程序员文章站 2023-01-15 08:32:12
在java web应用中,如何获取servlet请求中的参数,并传递给跳转的jsp页面?例如访问 当执行这个bbs servlet时,将url参数id的值传递给bbs.j...

在java web应用中,如何获取servlet请求中的参数,并传递给跳转的jsp页面?例如访问

当执行这个bbs servlet时,将url参数id的值传递给bbs.jsp页面?

1.首先要配置web.xml,见下面的配置:

<servlet>
 <servlet-name>bbs</servlet-name>
 <servlet-class>
  org.openjweb.core.servlet.bbsservlet
 </servlet-class>
 </servlet>
 <servlet-mapping>
 <servlet-name>bbs</servlet-name>
 <url-pattern>/bbs</url-pattern>
 </servlet-mapping>

2.编写servlet类:

package org.openjweb.core.servlet;

import java.io.ioexception;
import javax.servlet.servletexception;
import javax.servlet.http.httpservlet;
import javax.servlet.http.httpservletrequest;
import javax.servlet.http.httpservletresponse;
 
public class bbsservlet extends httpservlet 
{
 private static final long serialversionuid = 1l;
  public bbsservlet() 
  {
    super();
    // todo auto-generated constructor stub
  }
  
 protected void doget(httpservletrequest request, httpservletresponse response) 
 throws servletexception, ioexception 
 { 
  //http://bbs.csdn.net/topics/90438353
   request.setcharacterencoding("utf-8");  //设置编码
   string id = request.getparameter("id");
   request.setattribute("id", id);
   request.getrequestdispatcher("/bbs.jsp").forward(request, response);
 }
 
 protected void dopost(httpservletrequest request, httpservletresponse response) 
 throws servletexception, ioexception 
 {
 doget(request, response);
 
 }
}

在应用根目录创建bbs.jsp文件,内容为:

 <%@ page contenttype="text/html;charset=utf-8"%>
 <%
out.println(request.getattribute("id"));

 %>

注意很多人传递参数不成功是因为是在doget方法中调用dopost,这里doget方法不要调用dopost.