页面编码为UTF-8的项目中servlet中文显示乱码的解决方法

servlet中文显示乱码:
1、servlet中输出中文字符
2、servlet接收表单传值并显示,表单字段含中文。

servlet中文显示乱码:

第一种情况:servlet中输出中文字符,如:

public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {

  response.setContentType("text/html");
  PrintWriter out = response.getWriter();
  out.println("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">");
  out.println("<HTML>");
  out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
  out.println("  <BODY>");
  out.print(" 中国网页设计http://www.125jz.com-最权威的网页设计教程站 ");
  out.println("  </BODY>");
  out.println("</HTML>");
  out.flush();
  out.close();
 }

运行显示:??????http://www.125jz.com-???????????

解决方法:
把response.setContentType(“text/html”);改为response.setContentType(“text/html;charset=UTF-8”);

第二种情况:servlet接收表单传值并显示,表单字段含中文。

如:
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

 response.setContentType(“text/html;charset=UTF-8”);
request.setCharacterEncoding(“UTF-8”);

PrintWriter out = response.getWriter();
out.println(“<!DOCTYPE HTML PUBLIC \”-//W3C//DTD HTML 4.01 Transitional//EN\”>”);
out.println(“<HTML>”);
out.println(”  <HEAD><TITLE>A Servlet</TITLE></HEAD>”);
out.println(”  <BODY>”);
String name=request.getParameter(“name”);//接收表单传递的参数值,含中文。
out.println(“hello “+name);
out.println(”  </BODY>”);
out.println(“</HTML>”);
out.flush();
out.close();
}

解决方法:在servlet程序中加上以下代码就可以了:
response.setContentType(“text/html;charset=UTF-8”);
request.setCharacterEncoding(“UTF-8”);

如果页面编码是gb2312只需将以上代码中的UTF-8换成gb2312即可。

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/5111.html

(0)
江山如画的头像江山如画管理团队
MVC详解:模型(Model)-视图(View)-控制器(Controller)
上一篇 2020年2月23日 上午11:32
myeclipse注册方法(在哪输入注册码?)
下一篇 2020年2月23日 上午11:50

99%的人还看了以下文章

  • 网页设计常见css3动画效果(摆动、缩放、旋转、透明、反弹)

    网页上常看到某个DIV或图片有渐入、摆动、缩放、旋转、透明、反弹等效果,今天分享给大家! <!DOCTYPE html> <html> <head> <meta name=”viewport” content=”initial-scale=1.0, maximum-scale=1.0, user-scalable=n…

    2022年5月9日
    7.8K0
  • 纯CSS制作红色网站二级下拉导航菜单

    纯CSS制作红色网站二级下拉导航菜单,代码非常简洁,适合修改后使用,入门就能掌握。 二级下拉导航菜单HTML代码: <nav> <ul> <li><a href=”#”>首页</a></li> <li><a href=”#”>电影</a> <ul…

    2019年4月17日
    15.8K0
  • 第14课:上传网页

    只要你有服务器空间和一个FTP工具就可以在因特网上发布自己的网站了。

    2018年1月18日
    10.0K1
  • 第12课:页面布局(CSS)

    如何为页面实现理想的布局? 你可以使用级联样式表(Cascading Style Sheets,简称CSS)为网站设计页面布局。本课将对CSS作简单介绍。如需从头开始全面学习CSS知识,可以使用我们提供的CSS教程。因此,请将本课当作CSS的预备课。CSS是HTML的搭档。在编码过程中,它们发挥不同的作用:HTML负责网页的具体内容(结构),而CSS则修饰网…

    2018年1月19日
    10.5K0
  • Flex布局“弹性盒子”

    一.概念 flex布局: Flex Box 的缩写,意味“灵活的盒子”或“弹性盒子”,所以flex布局又称“弹性布局”。 flex容器 采用flex布局的元素,成为flex容器。display:flex; flex项目 flex容器的所有子元素自动成为容器成员,称为flex项目。 <div style=“ display:flex;”>   &l…

    2020年4月12日
    5.4K0
  • 最简单的wmv视频网页播放代码

    如何在网页上播放wmv格式视频? 1、将以下代码复制到html网页的<body>中:如 <embed src=”wangyesheji1.wmv” width=”460″ height=”414″ autostart=”1″ filename=”mms:/wangyesheji1.wmv” showcontrols=”1″ showstat…

    2021年4月5日
    15.1K0

发表回复

登录后才能评论