sun.misc.BASE64Decoder导入异常及处理思路

简介: Java后台保存base64图片数据使用byte[] bytes = new BASE64Decoder().decodeBuffer(str);需要引入sun.misc.BASE64Decoder,但在eclipse中提示如下警告:  查阅后在一篇文章中提到:“一直以来Base64的加密解密都是使用sun.misc包下的BASE64Encoder及BASE64Decoder的sun.misc.BASE64Encoder/BASE64Decoder类。

Java后台保存base64图片数据

使用byte[] bytes = new BASE64Decoder().decodeBuffer(str);需要引入sun.misc.BASE64Decoder,但在eclipse中提示如下警告:

 

 

查阅后在一篇文章中提到:

“一直以来Base64的加密解密都是使用sun.misc包下的BASE64Encoder及BASE64Decoder的sun.misc.BASE64Encoder/BASE64Decoder类。这人个类是sun公司的内部方法,并没有在java api中公开过,不属于JDK标准库范畴,但在JDK中包含了该类,可以直接使用。但是在eclipse和MyEclipse中直接使用,却找不到该类。”

详细解释可以参照:http://blog.sina.com.cn/s/blog_5a6efa330102v8st.html

 

 

一直以来Base64的加密解密都是使用sun.misc包下的BASE64Encoder及BASE64Decoder的sun.misc.BASE64Encoder/BASE64Decoder类。这人个类是sun公司的内部方法,并没有在java api中公开过,不属于JDK标准库范畴,但在JDK中包含了该类,可以直接使用。但是在eclipse和MyEclipse中直接使用,却找不到该类。如下图!

BASE64Encoder及BASE64Decoder的正确用法

解决方法如图:右键项目-》属性-》构建路经

BASE64Encoder及BASE64Decoder的正确用法

右键项目-》属性-》Java bulid path-》jre System Library-》access rules-》resolution选择accessible,下面填上** 点击确定即可!!!

 

 

BASE64Encoder及BASE64Decoder的正确用法

 

BASE64Encoder及BASE64Decoder的正确用法

这是英文版界面

BASE64Encoder及BASE64Decoder的正确用法

另外网上也有用相应的替代的对象及方法,如使用

org.apache.commons.codec.binary.Base64类等。可以自己去查用!

 

以上内容均参考自:http://blog.sina.com.cn/s/blog_5a6efa330102v8st.html

 

 

改使用org.apache.commons.codec.binary.Base64

 

String base64Code = request.getParameter("base64Code");
Base64 base64 = new Base64();
byte[] bytes = base64.decodeBase64(new String(base64Code).getBytes());

 

亲测,效果一样!!!

 

相关文章
|
安全 网络安全
IP的纯净度:评判标准与重要性
**IP纯净度关乎网络行为的安全与可靠性。高纯净度IP指独立、真实、无不良记录的地址。评估标准包括:** - **IP来源**:正规ISP的IP更纯净。 - **历史记录**:检查是否涉及违规行为或在黑名单中。 - **技术特征**:支持SSL,匿名性高,连接稳定快速的IP更佳。 - **用户反馈**:用户评价反映IP的实际表现和信誉。 综合考量这些因素,能确保选择到安全可靠的IP地址。
|
存储 Kubernetes 网络协议
K8S常见问题
【10月更文挑战第2天】
953 4
|
SQL 缓存 Oracle
一文教会你如何在SpringBoot项目里集成Hibernate
一文教会你如何在SpringBoot项目里集成Hibernate
1598 1
|
Java Spring
required a bean of type ‘org.springframework.web.client.RestTemplate‘ that could not be found.
required a bean of type ‘org.springframework.web.client.RestTemplate‘ that could not be found.
required a bean of type ‘org.springframework.web.client.RestTemplate‘ that could not be found.
|
存储 算法 C++
C++一分钟之-扁平化映射与unordered_map
【7月更文挑战第5天】C++的STL `unordered_map`是键值对的快速查找容器,基于哈希表。常见问题包括哈希函数选择、键类型限制、内存管理和迭代顺序不确定性。要避免问题,需优化哈希函数,确保自定义类型支持哈希和比较操作,合理管理内存,不依赖迭代顺序。提供的代码示例展示了如何为自定义类型定义哈希函数并操作`unordered_map`。正确使用能提升代码效率。
364 0
C++一分钟之-扁平化映射与unordered_map
|
物联网 Java 数据格式
阿里云物联网消息透传设备端payLoad设置问题
由于低配置且资源受限,或者对网络流量有要求的设备,不适合直接构造JSON数据与物联网平台通信,可将原数据透传到物联网平台。本文主要针对文档中未对设备端payLoad的设置进行介绍,初次使用容易出错,结合官方示例对payLoad对象的处理进行介绍。
15081 0
阿里云物联网消息透传设备端payLoad设置问题
|
开发者 异构计算 AI芯片
Colab搞了个大会员,每月50刀训练不掉线,10刀会员:我卑微了?
你以为你充了会员就无敌了?其实上面还有大会员、超级会员、至尊会员……
4071 0
Colab搞了个大会员,每月50刀训练不掉线,10刀会员:我卑微了?
|
iOS开发 Python
一个iOS噪音计模型、以及测量原理及分贝计算
最近在办公室觉得有点吵,然后忽然想做一个噪音计测试一下噪音,在App Store下载了几款测噪音软件,使用原来都大同小异。于是决定自己实现测噪音的原理。
1241 0
一个iOS噪音计模型、以及测量原理及分贝计算
|
安全 Java 开发工具
Android签名详解(debug和release)
Android签名详解(debug和release) 1. 为什么要签名 1) 发送者的身份认证 由于开发商可能通过使用相同的Package Name来混淆替换已经安装的程序,以此保证签名不同的包不被替换 2) 保证信息传输的完整性 签名对于包中的每个文件进行处理,以此确保包中内容不被替换 3) 防止交易中的抵赖发生,Market对软件的要求 2.
2213 0

热门文章

最新文章