request问题

一、 requestHttpServletRequest接口的一个对象,而ServletRequestHttpServletRequest的父接口。


1request接受参数出现中文乱码问题。

<FORM METHOD="POST" ACTION="input.jsp">

输入信息:<INPUT TYPE="text" NAME="info">

<INPUT TYPE="hidden" name="var" value="www.mldn.cn">

<INPUT TYPE="submit" value="显示">

</FORM>

接受两个参数值,一个是隐藏的参数

 Input.jsp

<%@ page contentType="text/html;charset=GBK"%>

<%

String str = request.getParameter("info") ; // 接收表单参数

String var = request.getParameter("var") ; // 接收表单参数

%>

<h2>参数内容:<%=str%></h2>

<h2>参数内容:<%=var%></h2>

request接受参数出现了中文乱码,怎么办呢?

利用request.setCharacterEncoding("GBK") ; // 按中文接收

或者转码为服务器默认的编码---ISO89859-1即可

修改input.jsp

<%@ page contentType="text/html;charset=GBK"%>

<%

request.setCharacterEncoding("GBK") ; // 按中文接收

String str = request.getParameter("info") ; // 接收表单参数

String var = request.getParameter("var") ; // 接收表单参数

// str = new String(str.getBytes("ISO8859-1")) ;// 转码

%>

<h2>参数内容:<%=str%></h2>

<h2>参数内容:<%=var%></h2>

运行结果正常


比较常用的是setCharacterEncoding(String name)

2get提交和post提交方式的区别:

·get提交:会在地址栏中显示提交的内容,地址栏中最大只能放4K~5K容量的文字。

·post提交:地址栏不显示提交的内容,本身不受成都到的限制,理论上是任意的长度,但是如果上传的内容过多的话,会超过HTTP的超时时间的限制。

3URL重写

除了使用表单传递参数之外,也可以使用地址重写的方式传递参数,传递的格式如下:

Xxx.jsp?参数名称=参数值&参数名称=参数值&参数名称=参数值

4、利用requestpublicString[] getParameteValues(String name)来接受多个同名参数,以数组的形式返回。

范例:接受复选框的多个值

Request.htm

<form action="request02.jsp" method="post">

姓名: <input type="text" name="name"><br>

兴趣: <input type="checkbox" name="inst" value="游泳">游泳

<input type="checkbox" name="inst" value="唱歌">唱歌

<input type="checkbox" name="inst" value="跳舞">跳舞

<br><input type="submit" value="显示">

</form>

request02.jsp

<%@ page contentType="text/html;charset=GBK"%>

<%

request.setCharacterEncoding("GBK") ; // 按中文接收

String name = request.getParameter("name") ; // 接收表单参数

String[] inst = request.getParameterValues("inst") ; // 接收表单参数

%>

<h2>姓名:<%=name%></h2>

<h2>兴趣:

<%

for(int i=0;i<inst.length;i++){

%>

<%=inst[i]%>、

<%

}

%>

</h2>


5获取客户端的IP地址

<%@ page contentType="text/html;charset=GBK"%>

<%

String ip = request.getRemoteAddr();//获取本地ip

%>

<h2>ip地址:<%=ip%></h2>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值