一. 统一所有的编码格式

(1)JSP页面设置:<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

(2)设置编辑器默认的编码格式

例如,我的编辑器是myeclipse,全局编码设置的方法:ToolBar-->Window-->Preferences-->General-->Workspace-->Text file encoding

局部编码设置:在源码按右键-->General-->Editors-->Test Editors-->Spelling-->Encoding,这里是设置单个文件的编码。

二. 使用过滤器filter

首先自己编写一个过滤器
   1: package com.bigdata.util;

   2:  

   3: import java.io.IOException;

   4: import javax.servlet.Filter;

   5: import javax.servlet.FilterChain;

   6: import javax.servlet.FilterConfig;

   7: import javax.servlet.ServletException;

   8: import javax.servlet.ServletRequest;

   9: import javax.servlet.ServletResponse;

  10:  

  11: public class CharacterEncodingFilter implements Filter{

  12:     protected FilterConfig filterConfig = null;

  13:     protected String encoding ="";

  14:     @Override

  15:     public void destroy() {

  16:         // TODO Auto-generated method stub

  17:         filterConfig = null;

  18:         encoding = null;

  19:     }

  20:  

  21:     @Override

  22:     public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse,

  23:             FilterChain filterChain) throws IOException, ServletException {

  24:         // TODO Auto-generated method stub

  25:         if(encoding != null && !"".equals(encoding))

  26:             servletRequest.setCharacterEncoding(encoding);

  27:         filterChain.doFilter(servletRequest, servletResponse);

  28:     }

  29:  

  30:     @Override

  31:     public void init(FilterConfig arg0) throws ServletException {

  32:         // TODO Auto-generated method stub

  33:         this.filterConfig = arg0;

  34:         this.encoding = filterConfig.getInitParameter("encoding");

  35:     }

  36:  

  37: }

接着,在web.xml中配置过滤器
   1: <filter>

   2:     <filter-name>characterEncodingFilter</filter-name>

   3:     <filter-class>com.bigdata.util.CharacterEncodingFilter</filter-class>

   4:     <init-param>

   5:         <param-name>encoding</param-name>

   6:         <param-value>UTF-8</param-value>

   7:      </init-param>

   8:    </filter>

   9:     <filter-mapping>

  10:       <filter-name>characterEncodingFilter</filter-name>

  11:       <url-pattern>/*</url-pattern>

  12:     </filter-mapping>

三. 终极绝招

如果前两个方法试过之后,依然无法解决乱码问题,可以试试这个终极绝招

   1: String str = new String(request.getParameter("something").getBytes("ISO-8859-1"),"utf-8")

但是网上都不推荐这种做法,不知道是什么原因,求大神解释!

Java URL 中文乱码解决办法的更多相关文章

  1. centos java tomcat 中文乱码解决办法

    现象: cenos 部署java web 程序 ,java类中有中文 出现乱码现象 即使使用: System.getProperty("中文") 控制台都出现  ??????  乱 ...

  2. Tomcat中Url中文乱码解决办法

    引自:http://thoughtfly.iteye.com/blog/1533481 默认的tomcat容器如果直接使用get方式在url中传中文时,传到后台接收会是乱码. 乱码问题 原因: tom ...

  3. NetBeans中文乱码解决办法

    一.Windows下NetBeans中文乱码解决办法 找到你的Netbeans安装目录下的etc文件夹,用记事本打开netbeans.conf,找到netbeans_default_options(不 ...

  4. [Linux] - CentOS中文乱码解决办法

    CentOS 7 终端中文乱码解决办法: 1.使用vim编辑locale.config文件: vim /etc/locale.conf 2.将LANG="en_US.UTF-8"修 ...

  5. Oracle导入中文乱码解决办法

    Oracle导入中文乱码解决办法 一.确保各个客户端字符集的编码同服务器字符集编码一致 1-       确定sqlplus字符集编码,如果是windows设置环境变量. 2-       确保Sec ...

  6. centos7.2中文乱码解决办法

    centos7.2 中文乱码解决办法 1.查看安装中文包: 查看系统是否安装中文语言包 (列出所有可用的公共语言环境的名称,包含有zh_CN) # locale -a |grep "zh_C ...

  7. windows下git bash中文乱码解决办法

    一.解决办法1:(直接上图) 1.在git bash下,右键 出现下图,选择options: 2.选择“Text” 3.将“Character set”设置为  UTF-8 转:windows下git ...

  8. 使用httpclient post请求中文乱码解决办法

    使用httpclient post请求中文乱码解决办法   在使用httpclient发送post请求的时候,接收端中文乱码问题解决. 正文: 我们都知道,一般情况下使用post请求是不会出现中文乱码 ...

  9. .js文件中文乱码解决办法

    描述:.js文件里的中文内容在网页中显示乱码 解决办法:把JS文件的编码改为utf-8 VS2013解决步骤:文件——高级保存选项——Unicode (UTF-8带签名)  代码页 65001

随机推荐

  1. ORACLE 创建表空间及用户

    /*创建存放原始数据的表空间*/ create tablespace Djzh_original datafile 'E:\APP\ADMINISTRATOR\ORADATA\ORCL\Djzh_or ...

  2. 【Selenium】显示、隐式等待

    显示等待 WebDriverWait 超时抛出TimeOutException,默认500毫秒 public class WaitToReturnElement { /* * 设置超时时间为5秒,返回 ...

  3. BZOJ_2443_[Usaco2011 Open]奇数度数 _并查集+树形DP

    BZOJ_2443_[Usaco2011 Open]奇数度数 _并查集. Description 奶牛们遭到了进攻!在他们的共和国里,有N(1 <= N <=50,000)个城市,由M(1 ...

  4. 「HNSDFZ暑期集训 测试1」「LuoguT36485」 括号(贪心

    Description 给定一个由左括号'('和右括号')'组成的字符串s,其中第i个括号的权值为ai. 我们定义一个括号序列t为合法括号序列,当且仅当满足下列条件之一: 1.t为空串 2.t=(A) ...

  5. [POI 2014] Little Bird

    [题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=3831 [算法] 单调队列优化动态规划 时间复杂度 : O(N) [代码] #incl ...

  6. MongoDB复制集安全认证

    之前我有一篇博客写的是“node.js通过权限验证连接MongoDB”,这篇博客上提到如何在启动文件中通过配置auth参数来开启权限认证,但这种认证方式只适合单机节点,当我们使用复制集时应该怎么开启权 ...

  7. Eclipse全项目搜索指定文件&字串

    在eclipse中如果希望在大量的项目中寻找指定的文件可不是一件轻松的事,还好eclipse提供了强大的搜索功能. 我们可以通过通配符或正则表达式来设定查寻条件,下面是操作示例: ctrl+h 打开搜 ...

  8. MySQL主从详细安装步骤

    网站: 程序在:web服务器192.168.1.100上面 数据库在:MySQL服务器192.168.1.123上面 实现目的:增加一台MySQL备份服务器(192.168.1.124),作为MySQ ...

  9. 【旧文章搬运】暴搜内存查找PE镜像

    原文发表于百度空间,2008-7-28========================================================================== 前面介绍了修 ...

  10. 什么是位、字节、字、KB、MB?

    1. 位(bit)是计算机里最小的数据单位,每一位的状态只能是0或者1 2. 字节(Byte)      1Byte = 8 bit      它是存储空间的基本计量单位,1byte可以存储一个英文字 ...