JAVA的URL编码我们先看看什么是编码?ASCII码就是一种编码,A的编码是16进制的0x41,字母B的编码是0x42,而中文的中是用Unicode编码,中就是0x4e2d,用UTF-8编码,需要3个字节的编码,它会变成0xe4b8ad

然后我们再来看一下什么是URL编码?URL编码是浏览器发送数据给服务器的时候使用的编码,我们的地址栏可以看到类似于key1=value1&key2=value2这样的URL

那URL的编码规则是什么呢?首先大写字母A到Z,小写字母a到z,0到9,以及.-*保持不变,而其他的字符以百分号开头的16进制来表示,例如小于号<用%3C表示,而汉字中用%E4%B8%AD来表示,他的编码正好对应的是UTF编码对应的16进制,0xe4b8ad
package com.learn.securl;import java.net.URLDecoder;
import java.net.URLEncoder;/*** 我们演示一下如何使用URL编码* @author Leon.Sun**/
public class SecURLDemo {public static void main(String[] args) throws Exception {String original = "URL 参数";/*** 首先我们使用URLEncoder.encode方法对一个字符串进行编码* 同时需要指定字符集编码UTF-8*/String encoded = URLEncoder.encode(original,"UTF-8");/*** URL+%E5%8F%82%E6%95%B0* 通过结果我们可以看到,* 英文字母保持不变,而空格会变为+* 中文就会变为百分号16进制* 一个中文经过UTF8编码以后通常是3个字节* 所以一共有6个百分号开头的16进制的编码* 另外我们要注意,JAVA的URLEncoder* 和URL的编码标准,* 稍微有点不同* 空格被编码为加号* 而现在的URL标准要求空格编码为百分号20* 不过一般的服务器*/System.out.println(encoded);/*** 如果我们要把URL的字符串,还原为原始的字符串* 我们通过URLDecoder.decode方法来实现* */String ori = new String(URLDecoder.decode(encoded, "UTF-8"));/*** URL 参数*/System.out.println(ori);}
}
1. URL编码是一种编码算法,不是一种加密算法,2. URL编码的目的是把任何的文本数据编码为百分号前缀表示的文本,编码后的文本仅包含大小写字母A-Z,a-z,0-9,-_.*,%,就是为了便于浏览器和服务器处理

URL编码 - Java加密与安全相关推荐

  1. Base64编码 - Java加密与安全

    BASE64编码什么是Base64编码?它是一种把二进制的数据用文本表示的编码算法.String base64Encoder(byte[] data)byte[]{0xe4,0xb8,0xad} -& ...

  2. URL编码 java

    System.out.println(URLDecoder.decode("%E7%B1%B3%E5%A5%87","GBK"));/* GBK编码转中文 */ ...

  3. java url加密解密,java URL 编码解码,该如何解决

    java URL 编码解码 我写了两个接口 一个是对字符串加密 的,一个是解密的  .加密的可以通过调用接口生成加密字符串如下: Oc0PEwKrLzHqT25hYLhWP5wlk5HROPJoWC3 ...

  4. Google App Engine for Java下的URL编码转换问题

    URL编码问题 此部分参考英文资料: http://www.blooberry.com/indexdot/html/topics/urlencoding.htm http://www.w3school ...

  5. java中http解析url,java url 编码(解析http请求汉语言地址 )

    java url 编码(解析http请求中文地址 ) 在近在做项目的过程中,由于客户那边服务器上提供的有很多中文结构目录.请求要的地址不能正常运行显示出来.下面来分享一下我对http协议处理请求中文的 ...

  6. 解决java中对URL编码的问题

    解决java中对URL编码的问题 参考文章: (1)解决java中对URL编码的问题 (2)https://www.cnblogs.com/a198720/p/4210763.html 备忘一下.

  7. EBS OAF 发展 URL商标、加密和编码

    EBS OAF 发展 URL商标.加密和编码 (版权声明.我原来的或翻译的文章,如需转载,转载的个人学习,转载请注明出处:否则,请与我联系.版权所有) 马克 当您指定页面定义声明URL参数,文本也能够 ...

  8. php 处理 url 加密_php url编码与解码(加密/解密)

    本节内容: url编码与解码 base64_encode 将字符串以 BASE64 编码. 语法: string base64_encode(string data); 返回值: 字符串 函数种类: ...

  9. 五、大话HTTP协议-HTTP之URL编码、身份认证问题

    在说明URL编码之前,先回顾编码和字符集的相关基础知识,再引出为什么URL中需要做编码,以及如何编码的.最后顺便介绍了下HTTP的身份认证问题.这些知识可谓是基础中的基础,重点中的重点了,不仅HTTP ...

最新文章

  1. mysql中3张表如何关联查询_mysql三张表关联查询
  2. Microbiome:南京农大团队在粘细菌捕食的生态学功能方面取得重要进展
  3. 如何用CSS实现图像替换链接文本显示并保证链接可点击
  4. Linux系统编程20:基础IO之从内核代码深刻理解Linux是如何管理文件及文件描述符的本质是什么
  5. linux管道命令sudo,那些超有趣的Linux命令——第一弹
  6. mysql5.7 no password_MySQL5.7.20报错Access denied for user 'root'@'localhost' (using password: NO)
  7. python 整数转字符串_16、atoi-整数字符串转整数-leetcode8-中等
  8. 使用Visual Studio.net调试javascript最方便的方法
  9. 使用tcpdump抓取HTTP包
  10. matlab自适应遗传算法代码,matlab自适应遗传算法
  11. 服务器:RAID、AHCI、IDE
  12. 拳皇命运服务器维护多长时间,拳皇命运开服表
  13. 花样解锁方式:后置、屏下和侧面指纹,你觉得那种最好用
  14. 头歌 CC++基本输入输出
  15. 【转】百度腾讯阿里,其大数据优劣势与策略分析
  16. 镭神16线激光雷达使用
  17. Repeater的查询,添加,修改,删除
  18. 科大讯飞语音听写app闪退
  19. 基于JAVA模拟考试系统计算机毕业设计源码+数据库+lw文档+系统+部署
  20. 目标跟踪算法KCF原理详解

热门文章

  1. ssh主机之间建立互信 --免密码
  2. SET QUERY_GOVERNOR_COST_LIMIT
  3. Spring.NET学习笔记——前言
  4. flask中的CBV和FBV
  5. 学习用户连接性要素之连接性(附XMIND整理笔记)
  6. RHCS图形界面建立GFS共享下
  7. C#中的WebBrowser控件的使用
  8. 词语搜索算法思想 - 第五步 结构实现
  9. DreamWeaver做ASP 第5页
  10. 什么是WebService??