Java bean 转 Map

时间:2023-03-08 18:00:37

Java bean 转 Map 时需要使用Fastjson

//方法 一
Map<String, Object> a = (Map<String, Object>)JSON.toJSON(javabean) //方法 二
Map<String, Object> a = JSON.parseObject(JSON.toJSONString(javabean))

另外也可以使用 使用 BeanUtils

Map beanMap = BeanUtils.describe(javabean);

实际例子如下:

package com.qa.Parameters;

public class postParameters {
private String userName;
private String password; public postParameters(){ }
//login
public postParameters(String userName , String password){
this.userName = userName;
this.password = password;
} public String getUserName() {
return userName;
} public void setUserName(String userName){
this.userName = userName;
} public String getPassword() {
return password;
} public void setPassword(String password){
this.password = password;
}
}

运行的代码如下:

package com.qa.tests;

import com.alibaba.fastjson.JSON;
import com.qa.Parameters.postParameters;
import java.util.Map; public class practise { public static void main(String[] args){
postParameters loginParameters = new postParameters("jack","123456");
//将登录请求对象序列化成json对象
String userJsonString = JSON.toJSONString(loginParameters);
Map<String, Object> javabean_map = JSON.parseObject(userJsonString);
Map<String, Object> javabean_map2 = JSON.parseObject(JSON.toJSONString(loginParameters));
Map<String, Object> javabean_map3 = (Map<String, Object>)JSON.toJSON(loginParameters); System.out.println("userJsonString Type "+ userJsonString.getClass().getName());
System.out.println("userJsonString "+ userJsonString);
System.out.println("javabean_map Type "+ javabean_map.getClass().getName());
System.out.println("javabean_map "+ javabean_map);
System.out.println("javabean_map2 Type "+ javabean_map2.getClass().getName());
System.out.println("javabean_map2 "+ javabean_map2);
System.out.println("javabean_map3 Type "+ javabean_map3.getClass().getName());
System.out.println("javabean_map3 "+ javabean_map3); } }

输出的结果如下:

userJsonString Type java.lang.String
userJsonString {"password":"123456","userName":"jack"}
javabean_map Type com.alibaba.fastjson.JSONObject
javabean_map {"password":"123456","userName":"jack"}
javabean_map2 Type com.alibaba.fastjson.JSONObject
javabean_map2 {"password":"123456","userName":"jack"}
javabean_map3 Type com.alibaba.fastjson.JSONObject
javabean_map3 {"password":"123456","userName":"jack"}