url 转码 java_java中URL转码
在传递参数的时候,如果有中文,那么可以先转码再转,之后再解码。URLEncoder.encode与URLDecoder.docode传递中文参数编码与解码
使用java.net.URLEncoder.encode()可以对要传递的中文进行编码
a.在传参数之前先把参数进行转码:java.net.URLEncoder.encode(param);
取值时用语句java.net.URLDecoder.decode(param);再转回中文
b.在你的Tomcat目录-->conf目录-->server.xml里找出这段:
port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"enableLookups="false" redirectPort="8443" acceptCount="100"debug="0" connectionTimeout="20000"disableUploadTimeout="true"
URIEncoding="gb2312"
/>
前端的写法:
在传参的时候编码:
String urls = "http://api.simsimi.com/request.p?key="+key+"&lc="+lc+"&ft=1.0&text="+java.net.URLEncoder.encode(text,"utf-8");
response.sendRedirect("talk.jsp?ans="+java.net.URLEncoder.encode(ans)+"&text="+java.net.URLEncoder.encode(text) );
%>
在获取的时候解码:
request.setCharacterEncoding("utf-8");
String ans=new String(request.getParameter("ans").getBytes("8859_1"));
String text=new String(request.getParameter("text").getBytes("8859_1"));
%>
或者
">点击这里使用java.net.URLDecoder.decode()在后面对传递的参数进行解码,一定要搭配使用哦
if(request.getParameter("url")!=null)
{
str=request.getParameter("url");
str=java.net.URLDecoder.decode(str,"GB2312");
str=new String(str.getBytes("ISO-8859-1"));
out.print(str);
}
%>
若,字符编码为utf-8也可以实现.或者在此段代码中,不写出字符编码也可以(只写一个参数)。
在jsp中对中文进行了编码的时候用的是UTF-8的编码方式,而在servlet中调用request.getParameter();方法的时候使用服务器指定的编码格式自动解码一次,所以前台编码一次后台解码一次而解码和编码的方式不同可能会造成乱码的出现。
ajax写法:
$.ajax({
url:'/cargroup-ajax/searchCargroupName.action',async:false,
data:{
cargroupName:encodeURI(cargroupName)//中文
},
type:'post',
dataType:'json',
success:function(data){if(data=="true"){if(flag!="form"){
alert("该名称可用!");
}
checkRepeat= true;
}else{if(flag!="form"){
alert("该名称不可用!");
}
}
}
});
后台java:
cargroupName = URLDecoder.decode(request.getParameter("cargroupName"), "utf-8");
参考资料:
url 转码 java_java中URL转码相关推荐
- split逗号分割中文出现乱码java_Java中URL传中文时乱码的问题解决方案
前言 Java中URL传中文时乱码的问题相信不少朋友都遇到过,最近就遇到一个问题,就是在Action当中把一条中文信息绑定在URL的后面,ActionForward到别一个页面时,用reqeust.g ...
- 中文转码 java_URL 中中文转码
js对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent,相应3个解码函数:unescape,decodeURI,decodeURIComponent 1 ...
- url 函数 php,php中url处理函数总结
在php中url处理函数有很多,如有:http_build_query,compact,urldecode.urlencode,parse_url,rawurldecode等等函数. http_bui ...
- 计算机中的原码,计算机中的原码反码补码移码
计算机中的原码反码补码移码 原码 数值 X 的原码记为 [X]原,如果机器字长为 n (即采用 n 个二进制位表示数据),则最高位是符号位,0 表示正号,1 表示负号,基余的 n~1 位表示数值的绝对 ...
- java扰码_TD中下行同步码和扰码的区别和作用
1.下行同步码是用来标识小区和区分相邻小区的,UE搜索到下行同步码了才能确定是哪个小区.进行同步等. 2.关于扰码,作用比较多,上行链路物理信道加扰的作用是区分用户,下行链路加扰可以区分小区和信道,扰 ...
- android开发获取imei码,Android中获取IMEI码的方法
我们在开发项目的时候,通常要获取手机的IMEI码,这是开发的必备需求,接下来,爱站技术频道小编就告诉大家Android中获取IMEI码的方法,希望本文的介绍能提高大家的水平. 核心代码:Imei = ...
- java compareto源码_java中compareTo源码解析(String类型)
官网API(JDK13): 先上结论: 1.计算compareTo两边字符串的总长度(length()) 2.求出总长度中的最小值 3.如果长度相等,比较ASCII值相同,返回0 4.如果长度不相同, ...
- java aqs源码_java中AQS源码分析
AQS内部采用CLH队列.CLH队列是由节点组成.内部的Node节点包含的状态有 static final int CANCELLED = 1; static final int SIGNAL ...
- JAVA中url的特殊字符处理及url转码解码
在url中 , 只能使用url合法的字符 . 如果使用了非法字符来访问某资源(如:+#等) , 就会导致资源访问异常或失败 . 同时原生url中也是不支持中文的 , 以百度为例 , 当你搜索了中文关键 ...
- Ajax库-认识服务器,URL地址,axios基本用法,响应状态码,业务状态码,接口测试工具
AjaxDay01 学习目标 1.理解客户端与服务器通信的过程 2.掌握 axios 的使用 3.了解接口文档的概念 服务器相关基础概念 概念:服务器是提供服务的设备(本质上就是一台电脑主机). 作用 ...
最新文章
- python中的元类_python中的元类
- Java基础学习总结(21)——数组
- 给定2个字符串,如何计算变化(插入、删除、替换)?【levenshtein distance 算法】
- hive执行drop卡死一例:java.lang.NoSuchMethodError: org.apache.commons.lang3.StringUtils.isAnyBlank
- 【Java】反转数组元素
- RIP引入外部路由配置示例
- SSO单点登录学习总结(2)——基于Cookie+fliter单点登录实例
- Sqoop 数据增量导出,--update-key添加多个字段
- csv数据源的创建(一)
- 计算机应用202001常规,2001年4月份全国高等教育自学考试计算机应用基础试题
- CAD测量图纸时数据显示不出来怎么办?
- java纸牌_Java纸牌拖拉机简单模拟
- C_CAPM模型(上)
- 阮一峰mysql_阮一峰:理解矩阵乘法
- Zend_Cache
- c语言随机数字密码生成器,随机数生成器(浮点数整型数)
- 《设计模式之禅》前言
- 安装和配置 苹果CMS v10 的记录 搭建教程
- 没考计算机水平怎么填6,“计算机水平”怎么填,没曾考级,只参加过大 – 手机爱问...
- P13 JPanel 面板