HTML文件在TOMCAT服务器上打开显示乱码

陈大能 陈大能 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
请问高手:
我在学习servlet!
我的servlet(nameServlet.java)代码如下:
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
public class nameServlet extends HttpServlet
{
public void doGet(HttpServletRequest request,HttpServletResponse response)throws
IOException,ServletException
{
response.setContentType("text/html;charset=GBK");
request.setCharacterEncoding("ISO8859-1");

String name1=request.getParameter("name");
byte[] temp3=name1.getBytes("GBK");
String str=new String(name1);
request.setCharacterEncoding("GBK");

PrintWriter out=response.getWriter();
out.println("<html>");
out.println("<head><title>HelloWorldServlet</title></head>");
out.println("<body>");
out.println("欢迎你,"+str+"!");
out.println("<p>你提交的表单已经被DOGET()方法处理!");
out.println("</body>");
out.println("</html>");
}
}


然后我建了nameinput.HTML文件,代码如下:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>使用 Get 方法</title>
</head>
<body>
<form ACTION="nameServlet" METHOD="GET">
姓名:<INPUT TYPE="text" NAME="name">
<P>
<INPUT TYPE="submit" NAME="submit" VALUE="提交">
<INPUT TYPE="reset" NAME="reset" VALUE="重置">
</form>
</body>
</html>
然后我将此HTML文件放在/tomcat/webapps/test2目录下,然后在浏览器中输入http://localhost:8080/test2/nameinput.html 打开
奇怪的是在此打开后网页(nameinput.html)上的应该显示的中文:姓名,提交,重置,都是乱码!!!

在文本框中输入中文,调用nameServlet后的中文也是可以正常显示的,
直接双击打开nameinput.html时也能正常显示!

本人被此问题搞晕了,请教各位高手帮忙!谢谢

...全文

相关推荐

评论 4
收藏 已收藏
分享
返回顶部
陈大能
Java EE 67,535 成员 225,843 内容