From f4cf8b5bed78ef69b05e080053f944d8ebe09f48 Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期三, 13 十二月 2023 14:17:29 +0800
Subject: [PATCH] RPM启动脚本调整
---
Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/ClassUtil.java | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 50 insertions(+), 0 deletions(-)
diff --git a/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/ClassUtil.java b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/ClassUtil.java
new file mode 100644
index 0000000..353cace
--- /dev/null
+++ b/Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/web/util/ClassUtil.java
@@ -0,0 +1,50 @@
+package com.vci.ubcs.starter.web.util;
+
+
+import java.lang.reflect.ParameterizedType;
+import java.lang.reflect.Type;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+
+public class ClassUtil {
+ private static final Map<Class<?>, Class<?>> primitiveMap = new HashMap(9);
+
+ public ClassUtil() {
+ }
+
+ public static boolean isPrimitive(Class<?> clazz) {
+ return primitiveMap.containsKey(clazz) ? true : clazz.isPrimitive();
+ }
+
+ public static Class<?> getElementType(Class<?> tartget, String fieldName) {
+ Class<?> elementTypeClass = null;
+
+ try {
+ Type type = VciBaseUtil.getFieldForObject(fieldName, tartget).getGenericType();
+ ParameterizedType t = (ParameterizedType)type;
+ String classStr = t.getActualTypeArguments()[0].toString().replace("class ", "");
+ if (classStr.contains("<")) {
+ classStr = classStr.substring(classStr.lastIndexOf("<") + 1, classStr.indexOf(">"));
+ }
+
+ elementTypeClass = Thread.currentThread().getContextClassLoader().loadClass(classStr);
+ return elementTypeClass;
+ } catch (SecurityException | ClassNotFoundException var6) {
+ throw new RuntimeException("get fieldName[" + fieldName + "] error", var6);
+ }
+ }
+
+ static {
+ primitiveMap.put(String.class, String.class);
+ primitiveMap.put(Boolean.class, Boolean.TYPE);
+ primitiveMap.put(Byte.class, Byte.TYPE);
+ primitiveMap.put(Character.class, Character.TYPE);
+ primitiveMap.put(Double.class, Double.TYPE);
+ primitiveMap.put(Float.class, Float.TYPE);
+ primitiveMap.put(Integer.class, Integer.TYPE);
+ primitiveMap.put(Long.class, Long.TYPE);
+ primitiveMap.put(Short.class, Short.TYPE);
+ primitiveMap.put(Date.class, Date.class);
+ }
+}
--
Gitblit v1.9.3