From 76797228a02aa650b60ec62699035f66bc40f311 Mon Sep 17 00:00:00 2001 From: redkale Date: Tue, 31 Jan 2023 22:03:07 +0800 Subject: [PATCH] =?UTF-8?q?ResourceFactory=E6=94=AF=E6=8C=81BigDecimal?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/org/redkale/boot/Application.java | 4 ++-- src/main/java/org/redkale/boot/NodeServer.java | 4 ++-- src/main/java/org/redkale/util/OneOrList.java | 4 ++-- .../java/org/redkale/util/ResourceFactory.java | 16 ++++++++++------ 4 files changed, 16 insertions(+), 12 deletions(-) diff --git a/src/main/java/org/redkale/boot/Application.java b/src/main/java/org/redkale/boot/Application.java index bcf144215..1c8547c87 100644 --- a/src/main/java/org/redkale/boot/Application.java +++ b/src/main/java/org/redkale/boot/Application.java @@ -1758,7 +1758,7 @@ public final class Application { throw new IllegalArgumentException("serviceClass is null"); } final Application application = Application.create(true); - System.setProperty("red" + "kale.singleton.serviceclass", serviceClass.getName()); + System.setProperty("redkale.singleton.serviceclass", serviceClass.getName()); if (extServiceClasses != null && extServiceClasses.length > 0) { StringBuilder sb = new StringBuilder(); for (Class clazz : extServiceClasses) { @@ -1767,7 +1767,7 @@ public final class Application { } sb.append(clazz.getName()); } - System.setProperty("red" + "kale.singleton.extserviceclasses", sb.toString()); + System.setProperty("redkale.singleton.extserviceclasses", sb.toString()); } application.init(); application.start(); diff --git a/src/main/java/org/redkale/boot/NodeServer.java b/src/main/java/org/redkale/boot/NodeServer.java index 8b8e7bd64..c075e4278 100644 --- a/src/main/java/org/redkale/boot/NodeServer.java +++ b/src/main/java/org/redkale/boot/NodeServer.java @@ -176,8 +176,8 @@ public abstract class NodeServer { ClassFilter serviceFilter = createServiceClassFilter(); if (application.isSingletonMode()) { //singleton模式下只加载指定的Service - final String ssc = System.getProperty("red" + "kale.singleton.serviceclass"); - final String extssc = System.getProperty("red" + "kale.singleton.extserviceclasses"); + final String ssc = System.getProperty("redkale.singleton.serviceclass"); + final String extssc = System.getProperty("redkale.singleton.extserviceclasses"); if (ssc != null) { final List sscList = new ArrayList<>(); sscList.add(ssc); diff --git a/src/main/java/org/redkale/util/OneOrList.java b/src/main/java/org/redkale/util/OneOrList.java index abb42ab61..d90452e78 100644 --- a/src/main/java/org/redkale/util/OneOrList.java +++ b/src/main/java/org/redkale/util/OneOrList.java @@ -51,7 +51,7 @@ public class OneOrList implements java.io.Serializable { } //序列化 - protected static Encodeable createEncoder(final org.redkale.convert.json.JsonFactory factory, final Type type) { + protected static Encodeable createEncoder(final JsonFactory factory, final Type type) { Type itemType = parseItemType(type); if (itemType == null) { return null; @@ -79,7 +79,7 @@ public class OneOrList implements java.io.Serializable { } //反序列化 - protected static Decodeable createDecoder(final org.redkale.convert.json.JsonFactory factory, final Type type) { + protected static Decodeable createDecoder(final JsonFactory factory, final Type type) { Type itemType = parseItemType(type); if (itemType == null) { return null; diff --git a/src/main/java/org/redkale/util/ResourceFactory.java b/src/main/java/org/redkale/util/ResourceFactory.java index 1d28534a3..e947df754 100644 --- a/src/main/java/org/redkale/util/ResourceFactory.java +++ b/src/main/java/org/redkale/util/ResourceFactory.java @@ -846,7 +846,8 @@ public final class ResourceFactory { if (classType.isPrimitive() || classType == Integer.class || classType == Long.class || classType == Short.class || classType == Boolean.class || classType == Byte.class - || classType == Float.class || classType == Double.class || classType == BigInteger.class) { + || classType == Float.class || classType == Double.class + || classType == BigInteger.class || classType == BigDecimal.class) { re = findEntry(rcname, String.class); if (re == null && rcname.startsWith("property.")) { //兼容2.8.0之前版本自动追加property.开头的配置项 re = findEntry(rcname.substring("property.".length()), String.class); @@ -874,7 +875,7 @@ public final class ResourceFactory { || classType == Long.class || classType == Short.class || classType == Boolean.class || classType == Byte.class || classType == Float.class || classType == Double.class - || classType == BigInteger.class) { + || classType == BigInteger.class || classType == BigDecimal.class) { re = findEntry(rcname, String.class); } else { re = findEntry(rcname, classType); @@ -901,10 +902,11 @@ public final class ResourceFactory { } } if (rs != null && !rs.getClass().isPrimitive() && (classType.isPrimitive() - || classType == Integer.class || classType == Long.class - || classType == Short.class || classType == Boolean.class - || classType == Byte.class || classType == Float.class - || classType == Double.class || classType == BigInteger.class)) { + || classType == Integer.class + || classType == Long.class || classType == Short.class + || classType == Boolean.class || classType == Byte.class + || classType == Float.class || classType == Double.class + || classType == BigInteger.class || classType == BigDecimal.class)) { if (classType == int.class || classType == Integer.class) { rs = Integer.decode(rs.toString()); } else if (classType == long.class || classType == Long.class) { @@ -921,6 +923,8 @@ public final class ResourceFactory { rs = Double.parseDouble(rs.toString()); } else if (classType == BigInteger.class) { rs = new BigInteger(rs.toString()); + } else if (classType == BigDecimal.class) { + rs = new BigDecimal(rs.toString()); } } if (rs != null) {