JSP 传递参数的问题

来源:百度知道 编辑:UC知道 时间:2024/06/08 09:47:59
MVC模式
假如是这样一个链接
<a href="test?showPage=1">链接</a>
web.xml

<servlet>
<servlet-name>test</servlet-name>
<servlet-class>com.controltest</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>test</servlet-name>
<url-pattern>/test</url-pattern>
</servlet-mapping>

将请求发送到servlet()后,怎么样才能,控制servlet调用doPost或者doGet方法,默认应该是调用doGet吧

我只知道表单的话 加个method=Post或get 链接 不知道怎么加才好
就是怎么在这个链接里加<a href="test?showPage">链接</a>
比如<a href="/test?showPage" method="post">链接</a>
不过这个方法不可以,我试过了 麻烦哪位高手帮我瞧瞧哇

servlet里面是这样的
.
.
.
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException,IOException { ..详细的内容太多了,省略了...}
public void doGet(HttpServletRequest request, Http

....你是说跳转吧 不是提交表单?

事实上 一般来说 一个SERVLET只执行一种方法 或者DOGET 或者DOPOST 如果要用两种方法的话 大概就是你那种了 POST用来提交表单 而GET所谓普通跳转所用。。

如果你想在任何时候都使用doPost方法的话 你可以在
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException,IOException {
doPost(request,response);//注意这里 你是可以在doGet方法里调用doPost方法的
}

这样的话你就会明白了? 再延伸下 意思就是 你可以在DOGET方法里获得参数 然后通过参数判断是否使用DOPOST的方法 如果参数不符合 可以继续使用DOGET方法 例子如下

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException,IOException { ..详细的内容太多了,省略了...}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException,IOException {
String type = request.getParameter("type");//假设你传的参数名为type
if(type.trim().equals("post")){ //如果你传的参数为post的话
doPost(request,response);
}else{
//继续执行DOGET的方法
}
}

然后 你得给偶加分

直接传不