javaweb项目编码配置
如果使用get方法传数据,需要注意编码:
编码转换
public String code(String s) { String str = s; try { byte b[] = str.getBytes("ISO-8859-1"); str = new String(b); return str; } catch(Exception e) { return str; } }
0: <%@ page pageEncoding="utf-8"%> //是指JSP页面保存时使用的编码方式,也就是JSP文件保存在硬盘上所使用的编码方式 <%@ page contentType="text/html; charset=utf-8" %> //是指JSP页面输入输出使用的编码方式,很多服务器在没有找到pageEncoding时,有charset代替pageEncoding
1: response.setContentType("text/html;charset=UTF-8"); response.setCharacterEncoding("UTF-8"); request.setCharacterEncoding("UTF-8");
2: 配置 server.xml。 <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" /> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" URIEncoding="UTF-8"/>
3: 配置 web.xml <filter> <filter-name>setEncoding</filter-name> <filter-class>com.dinner.filter.CharsetFilters</filter-class> <init-param> <param-name>coding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>setEncoding</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
4: 工程编码 开发中发现Windows版Eclipse默认Java和Web工程的默认编码方式不那么遂人愿,修改方法如下: 1. Web工程文件编码修改方式 Window -> Preference -> Content types 推荐将Web相关文件的编码都设置为UTF-8 2. Java源文件编码修改方式 Window -> Preference -> Workspace -> Text file encoding Windows平台默认为GBK,Linux平台默认为UTF-8