写一个将一个String类型的json经过base64加密后解密转化成javaBean的工具类
来源:互联网 发布:广联达造价软件培训 编辑:程序博客网 时间:2024/06/14 15:31
这个是由于自身需要,所写的一个工具类。代码不多,几十行主代码。主要用到3个jar包。
功能:可以将String类型的JSON格式的字符串(经过base64加密过得)解密后,添加到javaBean里面去。
用法:主需要调用静态方法,传入字符串,和javaBean.返回值是javaBean.
1.jar包
(1)一个JSON包。
(2)base64包
(3)BeanUtil工具包
2.代码
(1)这个是utilbase64类。用途是,把接受到的字节进行解码,返回String字符串。
package Util;import org.apache.commons.codec.binary.Base64;import org.junit.Test;public class UtilBase64 {static String str=null;public static String decodeBase64(final byte[] bytes){if(bytes!=null){str=new String(Base64.decodeBase64(bytes));return str;}else{return null;}}}
(2)这个是UtilJsonToJava. 工具核心类
package Util;import java.lang.reflect.InvocationTargetException;import java.util.HashMap;import java.util.Iterator;import net.sf.json.JSONObject;import org.apache.commons.beanutils.BeanUtils;/** * * 接受Base64编码 javaBean对象,返回JAVA对象 * @author * */public class UtilJsonToJava { public static <T>T UtilJsonToJava(String bytes,T javaBean) throws IllegalAccessException, InvocationTargetException{//建立BeanUtils 对象BeanUtils bean=new BeanUtils();//把String类型的bytes转换成byte[]byte[] Bytes=bytes.getBytes();//得到String类型的json格式String json=UtilBase64.decodeBase64(Bytes);//把String类型的json转换成JSONObjectJSONObject jsonObject =new JSONObject().fromObject(json);//遍历JSONObject 添加到javaBean中去Iterator it=jsonObject.keys();while(it.hasNext()){String key=(String)it.next();String value=(String)jsonObject.get(key);bean.copyProperty(javaBean, key, value);}return javaBean;}}
3.写一个测试类。测试一下效果
(1)先写一个JavaBean
package Test;public class javaBean { private String id; private String name;public javaBean() {super();// TODO Auto-generated constructor stub}public javaBean(String id, String name) {super();this.id = id;this.name = name;}@Overridepublic String toString() {return "javaBean [id=" + id + ", name=" + name + "]";}public String getId() {return id;}public void setId(String id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}}
(2)再写一个模拟传入字符串
//测试UtilJsonToJava@Testpublic void testUtilToJava() {//模拟一个加了密的json字符串String stt="{\"id\":\"3\",\"name\":\"博客\"}";//加密String st=Base64.encodeBase64String(stt.getBytes());System.out.println(st);try {System.out.println(UtilJsonToJava.UtilJsonToJava(st, new javaBean()).toString());} catch (IllegalAccessException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (InvocationTargetException e) {// TODO Auto-generated catch blocke.printStackTrace();}}
4.得到的结果是
//这个是:加密的编码
eyJpZCI6IjMiLCJuYW1lIjoisqm/zSJ9
//这个是一个javaBean类
javaBean [id=3, name=博客]
欢迎留言,多给点鼓励。谢谢
0 0
- 写一个将一个String类型的json经过base64加密后解密转化成javaBean的工具类
- (反射方法)写一个将一个String类型的json经过base64加密后解密转化成javaBean的工具类
- C#版的一个加密解密类(Base64的)
- 将json字符串转化成为一个string的二维数组
- json转JavaBean的一个在线工具
- 一个加密解密的类
- php 写的base64 加密解密
- 将一个对象转化为类json风格字符串的工具类
- 将一个对象转化为类json风格字符串的工具类
- 将一个对象转化为类json风格字符串的工具类
- 将一个正整数N用二进制表示并转化为一个string类型的值s
- 如何将一个String类型的数据转化为Map类型
- 经过Base64加密后字符的长度变化
- base64的加密解密
- Base64的加密解密
- 之前写的一个XML工具类,包括将JSON对象转换为XML对象
- base64加密解密工具类
- Base64加密解密工具类
- mybatis中$和#的区别
- Bootstrap <第一篇>
- sed命令详解
- 笔记
- vs选择数据源时sql语句出错问题
- 写一个将一个String类型的json经过base64加密后解密转化成javaBean的工具类
- Android SDCard Mount 流程分析(一)
- Android应用中的APK安全性问题
- 8.2多线程下
- tomcat共通jar提取
- Create MyDemoWorld
- CDialog
- 八 多态
- 从零移植uboot 2017 到nuc970(第十九天)