张志宇 SERVELET JSP学习讲义-08_SERVLET如何从上一个页面取得参数

本文介绍了一个简单的Servlet实现,该实现能够处理GET和POST两种请求类型,并展示如何通过设置字符编码来解决不同请求方式下可能出现的中文乱码问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先,servlet如下编写代码:

package com.zzk.cn;


import javax.servlet.*;
import javax.servlet.http.*;

import java.io.*;

public class ThreeParams extends HttpServlet{

	private static final long serialVersionUID = 1L;

	@Override
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		response.setContentType("text/html;charset=GBK");
		//解决post方式提交内容的乱码
		//一定要写在存取第一个参数之前
		request.setCharacterEncoding("GBK");
		
		//解决get方式乱码问题:-->URIEncoding="GBK"
		
		PrintWriter out = response.getWriter();
		out.println(request.getParameter("param1"));
		out.println("<br>");
		out.println(request.getParameter("param2"));
		out.println("<br>");
		out.println(request.getParameter("param3"));
		out.println("<br>");
		System.out.println("in doGet");
	}

	@Override
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		
		System.out.println("in doPost");
		doGet(request, response);
	}
}


页面输出:

1
2是


ThreeParams.htm
里post方式

<form id="form1" name="form1" method="post" action="ThreeParams">
  <table width="343" border="1">
    <tr>
      <td width="92">param1</td>
      <td width="94"><input name="param1" type="text" id="param1" />      </td>
    </tr>
    <tr>
      <td>param2</td>
      <td><label>
        <input name="param2" type="text" id="param2" />
      </label></td>
    </tr>
    <tr>
      <td>param3</td>
      <td><input name="param3" type="text" id="param3" /></td>
    </tr>
    <tr>
      <td> </td>
      <td><label>
        <input type="submit" value="提交" />
      </label></td>
    </tr>
  </table>
  </form>


传参成功

 tomcat里显示:

in Dopost
in Doget

然后将html改为get方式:


传参成功

tomcat里显示:

in doGet




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值