最新消息: 新版网站上线了!!!

tomcat容器java项中文乱码

Java程序与其他存储媒介交互时产生的乱码。很多存储媒介,如数据库,文件,流等的存储方式都是基于字节流的,Java程序与这些媒介交互时就会发生字符(char)与字节(byte)之间的转换,例如从页面提交表单中提交的数据在Java程序里显示乱码等情况。

如果在以上转换过程中使用的编码方式与字节原有的编码不一致,很可能就会出现乱码。

解决方法

  对于流行的Tomcat来说,有以下两种解决方法:

  1) 更改 D:\Tomcat\conf\server.xml,指定浏览器的编码格式为“简体中文”:

  方法是找到 server.xml 中的

    <Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"

    enableLookups="false" redirectPort="8443" acceptCount="100"

    connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8" />

  标记,粗体字是我添加的。

  b)更改 Java 程序,我的程序是这样的:

public class ThreeParams extends HttpServlet {

  public void doGet(HttpServletRequest request, HttpServletResponse response)

   throws ServletException, IOException {

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

      ...

  }  

}

  粗体字是必需要有的,它的作用是让浏览器把Unicode字符转换为UTF-8。这样页面的内容和浏览器的显示模式都设成了UTF-8,就不会乱码了。


.....

转载请注明:谷谷点程序 » tomcat容器java项中文乱码