100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > jsp转发 重定向乱码问题解决

jsp转发 重定向乱码问题解决

时间:2024-04-14 18:33:56

相关推荐

jsp转发 重定向乱码问题解决

jsp转发、重定向乱码问题解决

请求的转发和重定向:

.本质区别:请求的转发只发出了一次请求,而重定向则发出了两次请求。

具体:

①请求转发:地址栏是初次发出请求的地址

请求的重定向:地址栏不再是初次发送的请求地址,地址栏为最后响应的那个地址。

②请求转发:在最终的Servlet中,request对象和中转的request是同一对象

请求的重定向:在最终的Servlet中,request对象和中转的request不是同一对象.

③请求转发:只能转发给当前的WEB应用的资源

请求的重定向:可以重定向到任何资源

④请求转发:/代表的是当前WEB应用的根目录

请求的重定向:/代表的是当前WEB站点的根目录

//1.请求转发的代码

request.getRequestDispatcher("/c.jsp").forward(request, response);

//2.请求的重定向

// response.sendRedirect(“c.jsp”);

//可以重定向到任何资源

response.sendRedirect(“”);

2.中文乱码

1). 在 JSP 页面上输入中文, 请求页面后不出现乱码: 保证

contentType="text/html; charset=UTF-8", pageEncoding="UTF-8" charset 和 pageEncoding

的编码一致, 且都支持中文. 通常建议取值为UTF-8

还需保证浏览器的显示的字符编码也和请求的 JSP 页面的编码一致.

2). 获取中文参数值: 默认参数在传输过程中使用的编码为 ISO-8859-1

①. 对于 POST 请求: 只要在获取请求信息之前(在调用 request.getParameter 或者是 request.getReader 等),

调用 request.setCharacterEncoding(“UTF-8”) 即可.

②. 对于 GET 请求: 前面的方式对于 GET 无效. 可以通过修改 Tomcat 的 server.xml 文件的方式.

<Connector connectionTimeout="20000" port="8989" protocol="HTTP/1.1" redirectPort="8443" useBodyEncodingForURI="true"/>

http://localhost:8080/docs/config/http.html 文档的 useBodyEncodingForURI 属性.

为 Connector 节点添加 useBodyEncodingForURI=“true” 属性即可.

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。