From 23855599412c4d61b38d78f0f3abd3430a48b5b1 Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期三, 25 六月 2025 11:51:38 +0800
Subject: [PATCH] Merge branch 'mdc_hyjs_master'

---
 lxzn-boot-base-core/src/main/java/org/jeecg/common/util/oConvertUtils.java |  695 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 695 insertions(+), 0 deletions(-)

diff --git a/lxzn-boot-base-core/src/main/java/org/jeecg/common/util/oConvertUtils.java b/lxzn-boot-base-core/src/main/java/org/jeecg/common/util/oConvertUtils.java
new file mode 100644
index 0000000..e4496d7
--- /dev/null
+++ b/lxzn-boot-base-core/src/main/java/org/jeecg/common/util/oConvertUtils.java
@@ -0,0 +1,695 @@
+package org.jeecg.common.util;
+
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.io.IOUtils;
+import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.common.constant.SymbolConstant;
+import org.springframework.beans.BeanUtils;
+
+import javax.servlet.http.HttpServletRequest;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.UnsupportedEncodingException;
+import java.lang.reflect.Field;
+import java.math.BigDecimal;
+import java.math.BigInteger;
+import java.net.InetAddress;
+import java.net.NetworkInterface;
+import java.net.SocketException;
+import java.net.UnknownHostException;
+import java.sql.Date;
+import java.util.*;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+/**
+ *
+ * @Author  寮犱唬娴�
+ *
+ */
+@Slf4j
+public class oConvertUtils {
+	public static boolean isEmpty(Object object) {
+		if (object == null) {
+			return (true);
+		}
+		if ("".equals(object)) {
+			return (true);
+		}
+		if (CommonConstant.STRING_NULL.equals(object)) {
+			return (true);
+		}
+		return (false);
+	}
+
+	public static boolean isNotEmpty(Object object) {
+		if (object != null && !"".equals(object) && !object.equals(CommonConstant.STRING_NULL)) {
+			return (true);
+		}
+		return (false);
+	}
+
+	public static String decode(String strIn, String sourceCode, String targetCode) {
+		String temp = code2code(strIn, sourceCode, targetCode);
+		return temp;
+	}
+
+	@SuppressWarnings("AlibabaLowerCamelCaseVariableNaming")
+    public static String StrToUTF(String strIn, String sourceCode, String targetCode) {
+		strIn = "";
+		try {
+			strIn = new String(strIn.getBytes("ISO-8859-1"), "GBK");
+		} catch (UnsupportedEncodingException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+		return strIn;
+
+	}
+
+	private static String code2code(String strIn, String sourceCode, String targetCode) {
+		String strOut = null;
+		if (strIn == null || "".equals(strIn.trim())) {
+			return strIn;
+		}
+		try {
+			byte[] b = strIn.getBytes(sourceCode);
+			for (int i = 0; i < b.length; i++) {
+				System.out.print(b[i] + "  ");
+			}
+			strOut = new String(b, targetCode);
+		} catch (Exception e) {
+			e.printStackTrace();
+			return null;
+		}
+		return strOut;
+	}
+
+	public static int getInt(String s, int defval) {
+		if (s == null || s == "") {
+			return (defval);
+		}
+		try {
+			return (Integer.parseInt(s));
+		} catch (NumberFormatException e) {
+			return (defval);
+		}
+	}
+
+	public static int getInt(String s) {
+		if (s == null || s == "") {
+			return 0;
+		}
+		try {
+			return (Integer.parseInt(s));
+		} catch (NumberFormatException e) {
+			return 0;
+		}
+	}
+
+	public static int getInt(String s, Integer df) {
+		if (s == null || s == "") {
+			return df;
+		}
+		try {
+			return (Integer.parseInt(s));
+		} catch (NumberFormatException e) {
+			return 0;
+		}
+	}
+
+	public static Integer[] getInts(String[] s) {
+		if (s == null) {
+			return null;
+		}
+		Integer[] integer = new Integer[s.length];
+		for (int i = 0; i < s.length; i++) {
+			integer[i] = Integer.parseInt(s[i]);
+		}
+		return integer;
+
+	}
+
+	public static double getDouble(String s, double defval) {
+		if (s == null || s == "") {
+			return (defval);
+		}
+		try {
+			return (Double.parseDouble(s));
+		} catch (NumberFormatException e) {
+			return (defval);
+		}
+	}
+
+	public static double getDou(Double s, double defval) {
+		if (s == null) {
+			return (defval);
+		}
+		return s;
+	}
+
+	/*public static Short getShort(String s) {
+		if (StringUtil.isNotEmpty(s)) {
+			return (Short.parseShort(s));
+		} else {
+			return null;
+		}
+	}*/
+
+	public static int getInt(Object object, int defval) {
+		if (isEmpty(object)) {
+			return (defval);
+		}
+		try {
+			return (Integer.parseInt(object.toString()));
+		} catch (NumberFormatException e) {
+			return (defval);
+		}
+	}
+
+	public static Integer getInt(Object object) {
+		if (isEmpty(object)) {
+			return null;
+		}
+		try {
+			return (Integer.parseInt(object.toString()));
+		} catch (NumberFormatException e) {
+			return null;
+		}
+	}
+
+	public static int getInt(BigDecimal s, int defval) {
+		if (s == null) {
+			return (defval);
+		}
+		return s.intValue();
+	}
+
+	public static Integer[] getIntegerArry(String[] object) {
+		int len = object.length;
+		Integer[] result = new Integer[len];
+		try {
+			for (int i = 0; i < len; i++) {
+				result[i] = new Integer(object[i].trim());
+			}
+			return result;
+		} catch (NumberFormatException e) {
+			return null;
+		}
+	}
+
+	public static String getString(String s) {
+		return (getString(s, ""));
+	}
+
+	/**
+	 * 杞箟鎴怳nicode缂栫爜
+	 * @param s
+	 * @return
+	 */
+	/*public static String escapeJava(Object s) {
+		return StringEscapeUtils.escapeJava(getString(s));
+	}*/
+
+	public static String getString(Object object) {
+		if (isEmpty(object)) {
+			return "";
+		}
+		return (object.toString().trim());
+	}
+
+	public static String getString(int i) {
+		return (String.valueOf(i));
+	}
+
+	public static String getString(float i) {
+		return (String.valueOf(i));
+	}
+
+	public static String getString(String s, String defval) {
+		if (isEmpty(s)) {
+			return (defval);
+		}
+		return (s.trim());
+	}
+
+	public static String getString(Object s, String defval) {
+		if (isEmpty(s)) {
+			return (defval);
+		}
+		return (s.toString().trim());
+	}
+
+	public static long stringToLong(String str) {
+		Long test = new Long(0);
+		try {
+			test = Long.valueOf(str);
+		} catch (Exception e) {
+		}
+		return test.longValue();
+	}
+
+	/**
+	 * 鑾峰彇鏈満IP
+	 */
+	public static String getIp() {
+		String ip = null;
+		try {
+			InetAddress address = InetAddress.getLocalHost();
+			ip = address.getHostAddress();
+
+		} catch (UnknownHostException e) {
+			e.printStackTrace();
+		}
+		return ip;
+	}
+
+	/**
+	 * 鍒ゆ柇涓�涓被鏄惁涓哄熀鏈暟鎹被鍨嬨��
+	 *
+	 * @param clazz
+	 *            瑕佸垽鏂殑绫汇��
+	 * @return true 琛ㄧず涓哄熀鏈暟鎹被鍨嬨��
+	 */
+	private static boolean isBaseDataType(Class clazz) throws Exception {
+		return (clazz.equals(String.class) || clazz.equals(Integer.class) || clazz.equals(Byte.class) || clazz.equals(Long.class) || clazz.equals(Double.class) || clazz.equals(Float.class) || clazz.equals(Character.class) || clazz.equals(Short.class) || clazz.equals(BigDecimal.class) || clazz.equals(BigInteger.class) || clazz.equals(Boolean.class) || clazz.equals(Date.class) || clazz.isPrimitive());
+	}
+
+	/**
+	 * @param request
+	 *            IP
+	 * @return IP Address
+	 */
+	public static String getIpAddrByRequest(HttpServletRequest request) {
+		String ip = request.getHeader("x-forwarded-for");
+		if (ip == null || ip.length() == 0 || CommonConstant.UNKNOWN.equalsIgnoreCase(ip)) {
+			ip = request.getHeader("Proxy-Client-IP");
+		}
+		if (ip == null || ip.length() == 0 || CommonConstant.UNKNOWN.equalsIgnoreCase(ip)) {
+			ip = request.getHeader("WL-Proxy-Client-IP");
+		}
+		if (ip == null || ip.length() == 0 || CommonConstant.UNKNOWN.equalsIgnoreCase(ip)) {
+			ip = request.getRemoteAddr();
+		}
+		return ip;
+	}
+
+	/**
+	 * @return 鏈満IP
+	 * @throws SocketException
+	 */
+	public static String getRealIp() throws SocketException {
+        // 鏈湴IP锛屽鏋滄病鏈夐厤缃缃慖P鍒欒繑鍥炲畠
+		String localip = null;
+        // 澶栫綉IP
+		String netip = null;
+
+		Enumeration<NetworkInterface> netInterfaces = NetworkInterface.getNetworkInterfaces();
+		InetAddress ip = null;
+        // 鏄惁鎵惧埌澶栫綉IP
+		boolean finded = false;
+		while (netInterfaces.hasMoreElements() && !finded) {
+			NetworkInterface ni = netInterfaces.nextElement();
+			Enumeration<InetAddress> address = ni.getInetAddresses();
+			while (address.hasMoreElements()) {
+				ip = address.nextElement();
+                // 澶栫綉IP
+				if (!ip.isSiteLocalAddress() && !ip.isLoopbackAddress() && ip.getHostAddress().indexOf(":") == -1) {
+					netip = ip.getHostAddress();
+					finded = true;
+					break;
+				} else if (ip.isSiteLocalAddress() && !ip.isLoopbackAddress() && ip.getHostAddress().indexOf(":") == -1) {
+                    // 鍐呯綉IP
+				    localip = ip.getHostAddress();
+				}
+			}
+		}
+
+		if (netip != null && !"".equals(netip)) {
+			return netip;
+		} else {
+			return localip;
+		}
+	}
+
+	/**
+	 * java鍘婚櫎瀛楃涓蹭腑鐨勭┖鏍笺�佸洖杞︺�佹崲琛岀銆佸埗琛ㄧ
+	 *
+	 * @param str
+	 * @return
+	 */
+	public static String replaceBlank(String str) {
+		String dest = "";
+		if (str != null) {
+		    String reg = "\\s*|\t|\r|\n";
+			Pattern p = Pattern.compile(reg);
+			Matcher m = p.matcher(str);
+			dest = m.replaceAll("");
+		}
+		return dest;
+
+	}
+
+	/**
+	 * 鍒ゆ柇鍏冪礌鏄惁鍦ㄦ暟缁勫唴
+	 *
+	 * @param substring
+	 * @param source
+	 * @return
+	 */
+	public static boolean isIn(String substring, String[] source) {
+		if (source == null || source.length == 0) {
+			return false;
+		}
+		for (int i = 0; i < source.length; i++) {
+			String aSource = source[i];
+			if (aSource.equals(substring)) {
+				return true;
+			}
+		}
+		return false;
+	}
+
+	/**
+	 * 鑾峰彇Map瀵硅薄
+	 */
+	public static Map<Object, Object> getHashMap() {
+		return new HashMap<>(5);
+	}
+
+	/**
+	 * SET杞崲MAP
+	 *
+	 * @param str
+	 * @return
+	 */
+	public static Map<Object, Object> setToMap(Set<Object> setobj) {
+		Map<Object, Object> map = getHashMap();
+		for (Iterator iterator = setobj.iterator(); iterator.hasNext();) {
+			Map.Entry<Object, Object> entry = (Map.Entry<Object, Object>) iterator.next();
+			map.put(entry.getKey().toString(), entry.getValue() == null ? "" : entry.getValue().toString().trim());
+		}
+		return map;
+
+	}
+
+	public static boolean isInnerIp(String ipAddress) {
+		boolean isInnerIp = false;
+		long ipNum = getIpNum(ipAddress);
+		/**
+		 * 绉佹湁IP锛欰绫� 10.0.0.0-10.255.255.255 B绫� 172.16.0.0-172.31.255.255 C绫� 192.168.0.0-192.168.255.255 褰撶劧锛岃繕鏈�127杩欎釜缃戞鏄幆鍥炲湴鍧�
+		 **/
+		long aBegin = getIpNum("10.0.0.0");
+		long aEnd = getIpNum("10.255.255.255");
+		long bBegin = getIpNum("172.16.0.0");
+		long bEnd = getIpNum("172.31.255.255");
+		long cBegin = getIpNum("192.168.0.0");
+		long cEnd = getIpNum("192.168.255.255");
+		String localIp = "127.0.0.1";
+		isInnerIp = isInner(ipNum, aBegin, aEnd) || isInner(ipNum, bBegin, bEnd) || isInner(ipNum, cBegin, cEnd) || localIp.equals(ipAddress);
+		return isInnerIp;
+	}
+
+	private static long getIpNum(String ipAddress) {
+		String[] ip = ipAddress.split("\\.");
+		long a = Integer.parseInt(ip[0]);
+		long b = Integer.parseInt(ip[1]);
+		long c = Integer.parseInt(ip[2]);
+		long d = Integer.parseInt(ip[3]);
+
+		long ipNum = a * 256 * 256 * 256 + b * 256 * 256 + c * 256 + d;
+		return ipNum;
+	}
+
+	private static boolean isInner(long userIp, long begin, long end) {
+		return (userIp >= begin) && (userIp <= end);
+	}
+
+	/**
+	 * 灏嗕笅鍒掔嚎澶у啓鏂瑰紡鍛藉悕鐨勫瓧绗︿覆杞崲涓洪┘宄板紡銆�
+	 * 濡傛灉杞崲鍓嶇殑涓嬪垝绾垮ぇ鍐欐柟寮忓懡鍚嶇殑瀛楃涓蹭负绌猴紝鍒欒繑鍥炵┖瀛楃涓层��</br>
+	 * 渚嬪锛歨ello_world->helloWorld
+	 *
+	 * @param name
+	 *            杞崲鍓嶇殑涓嬪垝绾垮ぇ鍐欐柟寮忓懡鍚嶇殑瀛楃涓�
+	 * @return 杞崲鍚庣殑椹煎嘲寮忓懡鍚嶇殑瀛楃涓�
+	 */
+	public static String camelName(String name) {
+		StringBuilder result = new StringBuilder();
+		// 蹇�熸鏌�
+		if (name == null || name.isEmpty()) {
+			// 娌″繀瑕佽浆鎹�
+			return "";
+		} else if (!name.contains(SymbolConstant.UNDERLINE)) {
+			// 涓嶅惈涓嬪垝绾匡紝浠呭皢棣栧瓧姣嶅皬鍐�
+			//update-begin--Author:zhoujf  Date:20180503 for锛歍ASK #2500 銆愪唬鐮佺敓鎴愬櫒銆戜唬鐮佺敓鎴愬櫒寮�鍙戜竴閫氱敤妯℃澘鐢熸垚鍔熻兘
+			//update-begin--Author:zhoujf  Date:20180503 for锛歍ASK #2500 銆愪唬鐮佺敓鎴愬櫒銆戜唬鐮佺敓鎴愬櫒寮�鍙戜竴閫氱敤妯℃澘鐢熸垚鍔熻兘
+			return name.substring(0, 1).toLowerCase() + name.substring(1).toLowerCase();
+			//update-end--Author:zhoujf  Date:20180503 for锛歍ASK #2500 銆愪唬鐮佺敓鎴愬櫒銆戜唬鐮佺敓鎴愬櫒寮�鍙戜竴閫氱敤妯℃澘鐢熸垚鍔熻兘
+		}
+		// 鐢ㄤ笅鍒掔嚎灏嗗師濮嬪瓧绗︿覆鍒嗗壊
+		String[] camels = name.split("_");
+		for (String camel : camels) {
+			// 璺宠繃鍘熷瀛楃涓蹭腑寮�澶淬�佺粨灏剧殑涓嬫崲绾挎垨鍙岄噸涓嬪垝绾�
+			if (camel.isEmpty()) {
+				continue;
+			}
+			// 澶勭悊鐪熸鐨勯┘宄扮墖娈�
+			if (result.length() == 0) {
+				// 绗竴涓┘宄扮墖娈碉紝鍏ㄩ儴瀛楁瘝閮藉皬鍐�
+				result.append(camel.toLowerCase());
+			} else {
+				// 鍏朵粬鐨勯┘宄扮墖娈碉紝棣栧瓧姣嶅ぇ鍐�
+				result.append(camel.substring(0, 1).toUpperCase());
+				result.append(camel.substring(1).toLowerCase());
+			}
+		}
+		return result.toString();
+	}
+
+	/**
+	 * 灏嗕笅鍒掔嚎澶у啓鏂瑰紡鍛藉悕鐨勫瓧绗︿覆杞崲涓洪┘宄板紡銆�
+	 * 濡傛灉杞崲鍓嶇殑涓嬪垝绾垮ぇ鍐欐柟寮忓懡鍚嶇殑瀛楃涓蹭负绌猴紝鍒欒繑鍥炵┖瀛楃涓层��</br>
+	 * 渚嬪锛歨ello_world,test_id->helloWorld,testId
+	 *
+	 * @param name
+	 *            杞崲鍓嶇殑涓嬪垝绾垮ぇ鍐欐柟寮忓懡鍚嶇殑瀛楃涓�
+	 * @return 杞崲鍚庣殑椹煎嘲寮忓懡鍚嶇殑瀛楃涓�
+	 */
+	public static String camelNames(String names) {
+		if(names==null||"".equals(names)){
+			return null;
+		}
+		StringBuffer sf = new StringBuffer();
+		String[] fs = names.split(",");
+		for (String field : fs) {
+			field = camelName(field);
+			sf.append(field + ",");
+		}
+		String result = sf.toString();
+		return result.substring(0, result.length() - 1);
+	}
+
+	//update-begin--Author:zhoujf  Date:20180503 for锛歍ASK #2500 銆愪唬鐮佺敓鎴愬櫒銆戜唬鐮佺敓鎴愬櫒寮�鍙戜竴閫氱敤妯℃澘鐢熸垚鍔熻兘
+	/**
+	 * 灏嗕笅鍒掔嚎澶у啓鏂瑰紡鍛藉悕鐨勫瓧绗︿覆杞崲涓洪┘宄板紡銆�(棣栧瓧姣嶅啓)
+	 * 濡傛灉杞崲鍓嶇殑涓嬪垝绾垮ぇ鍐欐柟寮忓懡鍚嶇殑瀛楃涓蹭负绌猴紝鍒欒繑鍥炵┖瀛楃涓层��</br>
+	 * 渚嬪锛歨ello_world->HelloWorld
+	 *
+	 * @param name
+	 *            杞崲鍓嶇殑涓嬪垝绾垮ぇ鍐欐柟寮忓懡鍚嶇殑瀛楃涓�
+	 * @return 杞崲鍚庣殑椹煎嘲寮忓懡鍚嶇殑瀛楃涓�
+	 */
+	public static String camelNameCapFirst(String name) {
+		StringBuilder result = new StringBuilder();
+		// 蹇�熸鏌�
+		if (name == null || name.isEmpty()) {
+			// 娌″繀瑕佽浆鎹�
+			return "";
+		} else if (!name.contains(SymbolConstant.UNDERLINE)) {
+			// 涓嶅惈涓嬪垝绾匡紝浠呭皢棣栧瓧姣嶅皬鍐�
+			return name.substring(0, 1).toUpperCase() + name.substring(1).toLowerCase();
+		}
+		// 鐢ㄤ笅鍒掔嚎灏嗗師濮嬪瓧绗︿覆鍒嗗壊
+		String[] camels = name.split("_");
+		for (String camel : camels) {
+			// 璺宠繃鍘熷瀛楃涓蹭腑寮�澶淬�佺粨灏剧殑涓嬫崲绾挎垨鍙岄噸涓嬪垝绾�
+			if (camel.isEmpty()) {
+				continue;
+			}
+			// 鍏朵粬鐨勯┘宄扮墖娈碉紝棣栧瓧姣嶅ぇ鍐�
+			result.append(camel.substring(0, 1).toUpperCase());
+			result.append(camel.substring(1).toLowerCase());
+		}
+		return result.toString();
+	}
+	//update-end--Author:zhoujf  Date:20180503 for锛歍ASK #2500 銆愪唬鐮佺敓鎴愬櫒銆戜唬鐮佺敓鎴愬櫒寮�鍙戜竴閫氱敤妯℃澘鐢熸垚鍔熻兘
+
+	/**
+	 * 灏嗛┘宄板懡鍚嶈浆鍖栨垚涓嬪垝绾�
+	 * @param para
+	 * @return
+	 */
+	public static String camelToUnderline(String para){
+	    int length = 3;
+        if(para.length()<length){
+        	return para.toLowerCase();
+        }
+        StringBuilder sb=new StringBuilder(para);
+        //瀹氫綅
+        int temp=0;
+        //浠庣涓変釜瀛楃寮�濮� 閬垮厤鍛藉悕涓嶈鑼�
+        for(int i=2;i<para.length();i++){
+            if(Character.isUpperCase(para.charAt(i))){
+                sb.insert(i+temp, "_");
+                temp+=1;
+            }
+        }
+        return sb.toString().toLowerCase();
+	}
+
+	/**
+	 * 闅忔満鏁�
+	 * @param place 瀹氫箟闅忔満鏁扮殑浣嶆暟
+	 */
+	public static String randomGen(int place) {
+		String base = "qwertyuioplkjhgfdsazxcvbnmQAZWSXEDCRFVTGBYHNUJMIKLOP0123456789";
+		StringBuffer sb = new StringBuffer();
+		Random rd = new Random();
+		for(int i=0;i<place;i++) {
+			sb.append(base.charAt(rd.nextInt(base.length())));
+		}
+		return sb.toString();
+	}
+
+	/**
+	 * 鑾峰彇绫荤殑鎵�鏈夊睘鎬э紝鍖呮嫭鐖剁被
+	 *
+	 * @param object
+	 * @return
+	 */
+	public static Field[] getAllFields(Object object) {
+		Class<?> clazz = object.getClass();
+		List<Field> fieldList = new ArrayList<>();
+		while (clazz != null) {
+			fieldList.addAll(new ArrayList<>(Arrays.asList(clazz.getDeclaredFields())));
+			clazz = clazz.getSuperclass();
+		}
+		Field[] fields = new Field[fieldList.size()];
+		fieldList.toArray(fields);
+		return fields;
+	}
+
+	/**
+	  * 灏唌ap鐨刱ey鍏ㄩ儴杞垚灏忓啓
+	 * @param list
+	 * @return
+	 */
+	public static List<Map<String, Object>> toLowerCasePageList(List<Map<String, Object>> list){
+		List<Map<String, Object>> select = new ArrayList<>();
+		for (Map<String, Object> row : list) {
+			 Map<String, Object> resultMap = new HashMap<>(5);
+			 Set<String> keySet = row.keySet();
+			 for (String key : keySet) {
+				 String newKey = key.toLowerCase();
+				 resultMap.put(newKey, row.get(key));
+			 }
+			 select.add(resultMap);
+		}
+		return select;
+	}
+
+	/**
+	 * 灏唀ntityList杞崲鎴恗odelList
+	 * @param fromList
+	 * @param tClass
+	 * @param <F>
+	 * @param <T>
+	 * @return
+	 */
+	public static<F,T> List<T> entityListToModelList(List<F> fromList, Class<T> tClass){
+		if(fromList == null || fromList.isEmpty()){
+			return null;
+		}
+		List<T> tList = new ArrayList<>();
+		for(F f : fromList){
+			T t = entityToModel(f, tClass);
+			tList.add(t);
+		}
+		return tList;
+	}
+
+	public static<F,T> T entityToModel(F entity, Class<T> modelClass) {
+		log.debug("entityToModel : Entity灞炴�х殑鍊艰祴鍊煎埌Model");
+		Object model = null;
+		if (entity == null || modelClass ==null) {
+			return null;
+		}
+
+		try {
+			model = modelClass.newInstance();
+		} catch (InstantiationException e) {
+			log.error("entityToModel : 瀹炰緥鍖栧紓甯�", e);
+		} catch (IllegalAccessException e) {
+			log.error("entityToModel : 瀹夊叏鏉冮檺寮傚父", e);
+		}
+		BeanUtils.copyProperties(entity, model);
+		return (T)model;
+	}
+
+	/**
+	 * 鍒ゆ柇 list 鏄惁涓虹┖
+	 *
+	 * @param list
+	 * @return true or false
+	 * list == null		: true
+	 * list.size() == 0	: true
+	 */
+	public static boolean listIsEmpty(Collection list) {
+		return (list == null || list.size() == 0);
+	}
+
+	/**
+	 * 鍒ゆ柇 list 鏄惁涓嶄负绌�
+	 *
+	 * @param list
+	 * @return true or false
+	 * list == null		: false
+	 * list.size() == 0	: false
+	 */
+	public static boolean listIsNotEmpty(Collection list) {
+		return !listIsEmpty(list);
+	}
+
+	/**
+	 * 璇诲彇闈欐�佹枃鏈唴瀹�
+	 * @param url
+	 * @return
+	 */
+	public static String readStatic(String url) {
+		String json = "";
+		try {
+			//鎹釜鍐欐硶锛岃В鍐硈pringboot璇诲彇jar鍖呬腑鏂囦欢鐨勯棶棰�
+			InputStream stream = oConvertUtils.class.getClassLoader().getResourceAsStream(url.replace("classpath:", ""));
+			json = IOUtils.toString(stream,"UTF-8");
+		} catch (IOException e) {
+			log.error(e.getMessage(),e);
+		}
+		return json;
+	}
+
+	public static <T> List<T> castList(Object obj, Class<T> clazz)
+	{
+		List<T> result = new ArrayList<T>();
+		if(obj instanceof List<?>)
+		{
+			for (Object o : (List<?>) obj)
+			{
+				result.add(clazz.cast(o));
+			}
+			return result;
+		}
+		return null;
+	}
+
+}

--
Gitblit v1.9.3