servlet学习笔记---HttpServletRequest

61 篇文章 0 订阅
31 篇文章 0 订阅

Request的乱码问题:

1.以post提交时,设置request.setCharacterEncoding("UTF-8");便可以设置浏览器解析格式。

2.以get方式提交时,需要手动配置。

String username=request.getParameter("username");

username=new String(username.getBytes("iso8859-1"),"UTF-8");

这样就把原来从客户端用iso8859-1解析出的中文,改为用UTF-8来解析。

另外:用超链接带来的中文也只能手动配置。


数据转发问题:

若要带一部分数据:resquest.setAttribute("data",message);

request.getRequestDispatcher("/index.jsp").forward(request,reponse);


然后在index.jsp中要拿出数据:

方法一:¥(data)直接将数据打印

方法二:<%  out.write((String)request.getAttribute("data"));   %>


这里涉及到forward的一些小细节

当request返回的输出流被关闭(或刷新)后,跳转会失败。

若是request跳转多次,一定会失败,解决方法:每次跳转后直接return ;。

调用forward方法,原来response写到缓存区的内容会被清空。也就是说,respones返回的流没关,跳转后,写的内容会被清空。

还有include方法的一些细节

request.getRequestDispatcher("head.jsp").include(request,response);可以将head.jsp的内容显示到浏览器,但记得要将head.jsp的内容的<html>,<head>等全局标签去除,

要在request的输出流写上全局标签。




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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值