public class Method01 { public static void main(String[] args) { long s1 = System.currentTimeMillis(); Map dataMap = objectToMap(new User().setUser()); long s2 = System.currentTimeMillis(); System.out.println("花费时间毫秒:"+(s2-s1)); System.out.println(dataMap); public static Map objectToMap(Object object){ Map dataMap = new HashMap<>(); Class clazz = object.getClass(); for (Field field : clazz.getDeclaredFields()) { try { field.setAccessible(true); dataMap.put(field.getName(),field.get(object)); } catch (IllegalAccessException e) { e.printStackTrace(); return dataMap;

执行多次耗时一般在4-7毫秒左右

2.使用org.apache.commons.beanutils包下的BeanUtils.describe()方法,需要引入commons-beanutils包

import org.apache.commons.beanutils.BeanUtils;
import java.lang.reflect.InvocationTargetException;
import java.util.HashMap;
import java.util.Map;
public class Method02 {
    public static void main(String[] args) {
        long s1 = System.currentTimeMillis();
        Map<String, String> dataMap = objectToMap(new User().setUser());
        long s2 = System.currentTimeMillis();
        System.out.println("花费时间毫秒:"+(s2-s1));
        System.out.println(dataMap);
    public static Map<String, String> objectToMap(Object object){
        try {
            Map<String, String> dataMap = BeanUtils.describe(object);
            dataMap.remove("class");//移除多出来的class字段
            return dataMap;
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        } catch (InvocationTargetException e) {
            e.printStackTrace();
        } catch (NoSuchMethodException e) {
            e.printStackTrace();
        return new HashMap<>();

执行多次耗时一般在150毫秒左右,甚至更多

3.直接使用put方法往map对象里一个个赋值

import java.util.HashMap;
import java.util.Map;
public class Method03 {
    public static void main(String[] args) {
        long s1 = System.currentTimeMillis();
        User user = new User().setUser();
        Map<String,Object> dataMap = new HashMap<>();
        dataMap.put("id",user.getId());
        dataMap.put("userName",user.getUserName());
        dataMap.put("salary",user.getSalary());
        dataMap.put("birthday",user.getBirthday());
        dataMap.put("jobId",user.getJobId());
        long s2 = System.currentTimeMillis();
        System.out.println("花费时间毫秒:"+(s2-s1));
        System.out.println(dataMap);

执行多次耗时一般在3-9毫秒左右

4.使用BeanMap.create方法,需要引入spring相关jar

import org.apache.commons.beanutils.BeanUtils;
import org.springframework.cglib.beans.BeanMap;
import java.lang.reflect.InvocationTargetException;
import java.util.HashMap;
import java.util.Map;
public class Method04 {
    public static void main(String[] args) {
        long s1 = System.currentTimeMillis();
        Map<String, Object> dataMap = objectToMap(new User().setUser());
        long s2 = System.currentTimeMillis();
        System.out.println("花费时间毫秒:"+(s2-s1));
        System.out.println(dataMap);
    public static Map<String, Object> objectToMap(Object object){
        Map<String,Object> dataMap = new HashMap<>();
        BeanMap beanMap = BeanMap.create(object);
        for (Object key : beanMap.keySet()) {
            dataMap.put(key+"",beanMap.get(key));
        return dataMap;

执行多次耗时一般在180-280毫秒之间,甚至更多

创建对象Userpackage com.xqc; import java.util.Date; public class User { /** * * ID */ private Integer id; /** * * 用户名 */ private String userName; /** * * 岗位ID */ private Long jobId; * @MethodName: getUserInfoDataByUserId * @Description: 根据useId查询用户信息,封装成map key:属性名,value:属性值 * home.php?mod=space&uid=952169 userId 用户userId * @return public Map<String, String& import com.alibaba.fastjson.JSONObject; // 假设list有值 List<Map<String,Object>> list = new ArrayList<>(); // Student对象为测试对象 // 按照如下方式可以实现List& //调用两个换方法之后最好做一下判空 public class FindThree { public static void main(String[] args) throws Exception { Student student = new Student(); student.setName("jack"); student.setSex("男"); Map<String,String> map=new HashMap<>(); map.put("compare","5"); map.put("compareName","<="); map.put("curre.
Java 中,可以使用第三方的工具将 Map 换为 Java 对象。其中一种常见的方法是使用 Google 的 Gson 库。 首先,你需要在项目中添加 Gson 的依赖。然后,你可以使用 Gson 的 fromJson() 方法将 Map 换为 Java 对象。例如: Map<String, Object> map = new HashMap<>(); map.put("name", "John"); map.put("age", 30); Gson gson = new Gson(); Person person = gson.fromJson(gson.toJson(map), Person.class); System.out.println(person.getName()); // prints "John" System.out.println(person.getAge()); // prints 30 这里假设你已经有了一个名为 Person 的 Java 类,其中包含名为 name 和 age 的属性。
expected START_TAG or END_TAG not TEXT (position: TEXT seen ...<dependency>\n\ua0\ua0\ua0\ua0\ua0\ua 16628 expected START_TAG or END_TAG not TEXT (position: TEXT seen ...<dependency>\n\ua0\ua0\ua0\ua0\ua0\ua AltoriaPandragon: 感谢楼主瞬间解决 了 js快速判断对象里的每个值是不是空 要努力吖小小: 小小改动下下 js快速判断对象里的每个值是不是空 要努力吖小小: [code=javascript] * 判断对象的值是不是有为空值的,排除部分字段array['key'] objectValueAllEmpty(object,array){ var isEmpty = false; Object.keys(object).forEach((x)=>{ array.forEach((ele)=>{ if (ele !== x) { if(object[x] === null || object[x] === ""){ isEmpty = true; return isEmpty; [/code] org.apache.dubbo.config.ApplicationConfig#0“ contains illegal character, only digit, letter, ‘-‘, ‘_ 米开朗基罗_: 配置了name和id还是报错