java web上机课作业延伸出的坑爹问题 今天老师要我们用记事本写一个Servlet.java理解一下Servlet的基本原理的实现过程 于是乎,我看到了一个要求:代码中的符号应该修改为英文符号 为什么中文就不可以呢?然后我尝试写了中文,迎面而来的是疯狂的翻车。百度看了一堆也是没有解决 最终解决方案 坑点 由于是GBK编码,Notepad++中编码一定要选ANSI编码!!一定要选ANSI编码!!一定要选ANSI编码!! 原因 在整个Servlet访问过程中牵扯到 浏览器,Tomcat,Java程序三者 浏览器默认编码方式:gbk, Tomcat默认编码:iso-8859-1 , java代码中的编码一般常用utf-8 从Servlet传输数据到浏览器的过程是:Servlet —> Tomcat —> 浏览器 因为只写了Servlet.java所以只能够在这之中控制Servlet和Tomcat与浏览器统一为GBK。 核心代码 response.setContentType("text/html;charset=GBK"); request.setCharacterEncoding("GBK"); ……

阅读全文