JSP实用教程(3)——JSP内置对象

本文详细介绍了JSP的内置对象request和response的使用,包括处理汉字信息、操作HTTP请求参数、处理HTML标记如form、input、select等,以及如何处理超链接。request对象用于获取请求参数,避免乱码,并执行include或forward;response对象则涉及二进制响应、重定向和添加Cookie。

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


内置对象简介:

  • 由JSP容器实现和管理( JSP 内部对象是 Web 容器加载的一组类),在所有JSP页面中都能使用内部对象。
  • 它不像一般的Java对象那样用”new”去获取实例,而是可以直接在JSP页面使用的对象
  • 内置对象的名称是 JSP 的保留字
  • JSP 使用 Java 定义的内置对象来访问网页的动态内容
  • 内置对象只对表达式和Scriptlet有用,在声明中不能使用
    JSP的常用内置对象:request、response、session、application和out。
    在这里插入图片描述

HTTP请求报文的基本结构

在这里插入图片描述

request对象

是实现javax.servlet.HttpServletRequest 接口的类的一个实例,该对象封装了一次请求,客户端的请求参数都被封装在该对象里。
作用:

  • 取得请求参数的值;
  • 操作request范围的属性;
  • 执行include指令或forward指令。

处理汉字信息

防止乱码:
JSP页面文件的编码时UTF-8编码,让request对象在获取信息之前用request.setCharacterEncoding(“utf-8”)设置编码。
在头部添加 ContentType 属性,可解决页面汉字显示乱码问题(以下例子的前提是浏览器支持 gb2312 的编码)

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

1、避免通过post方式提交数据时产生乱码:
(1)Web客户(如浏览器)post的数据是什么编码,则服务器端就以什么编码来获取
(2)如浏览器发送的数据是GB2312编码,接收数据时的设置是

<%request.setCharacterEncoding("GB2312");
String firstName =request.getParameter("firstName"); %>

只对POST方式提交的数据有效,对GET方式提交的数据无效!
2、如果提交方式是get,要避免接收时乱码:
(1)可通过手工转换(以下假定客户方发送时采用GB2312编码):

String textContent=request.getParameter("boy");
           byte  b[]=textContent.getBytes("ISO-8859-1");
           textContent=new String(b);
或  textContent=new String(b,GB2312);

此方法对post方式发送的数据编码也有效,所以最通用。

(2)通过修改Tomact的conf目录下的server.xml来设置全局的get方式发送数据的编码:

<Connector port="8080"<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值