JAVA WEB 乱码

参考http://wenku.baidu.com/link?url=k9YBNpNlsd8nd3Hg4uS_4Qa4JQgEFvlZl6ACwUfeYr6UqGR6LaAymgl4UWPIMKq_Gtzj4n0X8ZpGPXLFwLBwRhTUHv6K0M6XvNqkmtD41tO&from_mod=copy_login

register_utf-8.html

<html >
<head>
   <title>register.html</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<form method="post" action="register_utf8.jsp">
<table>
<tr><td>用户名<input name="userName" type="text"></td></tr>
<tr><td>密码<input name="password" type="text"></td></tr>
<tr><td><input  type="submit" value="submit"></td></tr>
</table>
</html>

register-utf8.jsp

<%@ page contentType="text/html; charset=UTF-8" language="Java" pageEncoding="UTF-8"  %>
<jsp:useBean id="user" scope="page" class="com.example.ch3.UserBean"/>
<jsp:setProperty name="user" property="*"/>
<html>
<head>
<title>注册.jsp</title>
</head>
<body>
<%=request.getParameter("userName")%>
<hr>
<%
request.setCharacterEncoding("UTF-8");
String hz=request.getParameter("userName");
hz=new String(hz.getBytes("ISO-8859-1"),"UTF-8" );
out.print(hz) ;
 %>
 <hr>
 <%=request.getParameter("userName")%>
<hr>
 用户名 <%=user.getUserName() %><br>
密码:<%=user.getPassword() %><br>
<% 
out.println("Hello World @@@@@") ;
%>
<hr>
 用户名:<jsp:getProperty name="user" property="userName" /><br>
密码:<jsp:getProperty name="user" property="password" /><br>
</body>
</html>

调试方法:tomcat启动后,改动jsp、html文件,要删除tomcat 底下的 webapps/项目名称/work底下下中间文件。该目录底下存放着.jsp文件对应的.java 和.class。

JSP页面乱码
输入http://localhost:8080/ch3/ch5/register_utf8.jsp 出现乱码
解决方法:
1、jsp文件的编码, eclipse中查看: edit->set endcoding
2、<%@ page contentType=”text/html; charset=UTF-8” language=”Java” pageEncoding=”UTF-8” %>
服务器接收到获取xx.jsp请求时,会把xxx.jsp转化为servlet(该文件存在在work目录下:xxx.java),此时转化的编码格式是依据页面指令元素 的pageEncoding
也就说pageEncoding的属性值必须与步骤1中查到的jsp文件编码一致。
查看xxx.java中关于中文部分是否显示正常。
3、浏览器的编码格式
contentType=”text/html; charset=UTF-8”
这里指明浏览器以何种编码显示。

中文参数乱码
输入http://localhost:8080/ch3/ch5/register_utf8.html,输入中文用户名后请求http://localhost:8080/ch3/ch5/register_utf8.jsp出现乱码

解决方法:在tomcat conf/server.xml
加入URIEncoding=”UTF-8”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值