解决JSP页面乱码

1)普通的JSP界面中文乱码

一、jsp默认编码方式修改:

windows->Preferences->MyEclipse->jsp中的encoding改为UTF-8

二、将整个project设置编码UTF-8(UTF-8可以最大的支持国际化)

windows->Preferences->general->Workspace->Text file encoding->Other框中的Text file encoding改为UTF-8。

三、对java源文件编码设置为UTF-8.

windows->Preferences->general->Context Types->Text,选择Java Source File,在下面的Default encoding输入框中输入UTF-8,点Update,tb则设置Java文件编码为UTF-8。

打开Eclipse,有时候会出现中文注释乱码,这是因为Eclipse中对Text file encoding的默认编码是GBK,因此,右键点击你的"工程",将preferences中的"Text file encoding"中的Other改为UTF-8,即可!

2)表单提交时出现乱码

对于表单来说有两种提交方式:get和post提交方式。所以请求的时候便有get请求和post请求,两种请求方式所产生的乱码的解决方式是不同的。

每种方式都有着不同的解决方法:

Post提交方式:(response->request)

request. setCharacterEncoding(“UTF-8”);

Get提交方式:(request->response)
String  stuname = request.getParameter("stuname");
String str = new String(stuname.getBytes("ISO-8859-1"),"utf-8");

3)返回浏览器显示的乱码

因为response对象的getWriter()方法返回的默认对象使用“ISO-8859-1”字符集

解决方法加上两行代码:

response.setContentType("text/html;charset=utf-8");

response.setCharacterEncoding("utf-8");

4)补漏方法1-编码与解码

java.net包中提供了URLEncoder类encode静态方法和URLDcoder类的decode静态方法来解决乱码。
进行编码:URLEncoder.encode(stuname,”UTF-8”);
传递给服务器:<a href=”/1.jsp?stuname<%=stuname%>”>传递</a>
进行解码:URLDecoder.decode(stuname,”UTF-8”);

5)补漏方法2-修改Tomcat的编码

在tomcat的配置文件server.xml找到修改tomcat的端口的地方,
在其内部加入URLEcoding属性,设置为和你的项目中所设的编码一样的值。(conf->server用记事本打开并修改)
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"redirectPort="8443"  URIEncoding="UTF-8"/>
超链接与重定向时出现乱码

A.在Web开发中,挺多的时候都是通过超链接去传递中文参数的,这也会导致在显示的时候也会出现乱码,对于超链接来说,它实际上是向服务器端发送了一个请求,而它发出的请求是属于get请求,所以对于超链接的乱码来说,它处理乱码的方式和表单的get请求出现乱码的方式是一样的。

B.有时写上response的sendRedirect()方法进行重定向时也会出现乱码,重定向时实际上也是向服务器发送了一个请求,所以解决乱码的方法和上面是一样的。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值