From ba1c0ad6cffaa8a6288a4e66d0598d16f1cccc10 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期三, 13 十月 2021 11:00:35 +0800
Subject: [PATCH] 优化代码

---
 java110-utils/src/main/java/com/java110/utils/util/BeanConvertUtil.java |   26 ++++++++++++++++++++------
 1 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/java110-utils/src/main/java/com/java110/utils/util/BeanConvertUtil.java b/java110-utils/src/main/java/com/java110/utils/util/BeanConvertUtil.java
old mode 100644
new mode 100755
index b554b43..840961f
--- a/java110-utils/src/main/java/com/java110/utils/util/BeanConvertUtil.java
+++ b/java110-utils/src/main/java/com/java110/utils/util/BeanConvertUtil.java
@@ -1,6 +1,7 @@
 package com.java110.utils.util;
 
 
+import com.alibaba.fastjson.JSONObject;
 import org.apache.commons.beanutils.BeanUtils;
 import org.apache.commons.beanutils.ConvertUtils;
 import org.apache.commons.beanutils.Converter;
@@ -35,9 +36,9 @@
     static {
         ConvertUtils.register(new Converter() { //娉ㄥ唽涓�涓棩鏈熻浆鎹㈠櫒
 
-            public Object convert(Class type, Object value) {
+        	public <T> T convert(Class<T> type, Object value) {
                 Date date1 = null;
-                if (value instanceof String) {
+                if (value instanceof String && type.getClass().equals(Date.class)) {
                     String date = (String) value;
                     SimpleDateFormat sdf = null;
                     if (date.contains(":")) {
@@ -50,10 +51,11 @@
                     } catch (ParseException e) {
                         e.printStackTrace();
                     }
-                    return date1;
+                    return type.cast(date1);
                 }
-                return value;
+                return null;
             }
+
         }, Date.class);
 
 
@@ -90,19 +92,20 @@
         return dstBean;
     }
 
-    private static void objectFieldsPutMap(Object dstBean, BeanMap beanMap, Map orgMap) {
+    private static void objectFieldsPutMap(Object dstBean, BeanMap beanMap, Map<String,Object> orgMap) {
         //Field[] fields = dstBean.getClass().getDeclaredFields();
         Field[] fields = FieldUtils.getAllFields(dstBean.getClass());
         for (Field field : fields) {
             if (!orgMap.containsKey(field.getName())) {
                 continue;
             }
-            Class dstClass = field.getType();
+            Class<?> dstClass = field.getType();
             //System.out.println("瀛楁绫诲瀷" + dstClass);
 
             Object value = orgMap.get(field.getName());
             //String 杞琩ate
             Object tmpValue = Java110Converter.getValue(value, dstClass);
+            //System.out.println("tmpValue"+value.toString());
             beanMap.put(field.getName(), tmpValue);
         }
     }
@@ -169,6 +172,17 @@
         return map;
     }
 
+    /**
+     * bean杞崲涓簃ap瀵硅薄
+     *
+     * @param orgBean 鍘熷bean
+     * @return map瀵硅薄
+     */
+    public static JSONObject beanCovertJson(Object orgBean) {
+
+        return JSONObject.parseObject(JSONObject.toJSONString(orgBean));
+    }
+
 
     /**
      * bean闆嗗悎杞崲涓簃ap瀵硅薄闆嗗悎

--
Gitblit v1.8.0