diff --git a/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/Assert.java b/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/Assert.java
index d8f4f2cd..327152a0 100644
--- a/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/Assert.java
+++ b/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/Assert.java
@@ -92,7 +92,7 @@ public class Assert {
}
public static void notBlank(String str, String message) {
- if (StringUtil.isNotBlank(str)) {
+ if (StringUtil.isBlank(str)) {
throw new IllegalArgumentException(message);
}
}
diff --git a/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/BeanUtil.java b/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/BeanUtil.java
index e654f091..271bf623 100644
--- a/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/BeanUtil.java
+++ b/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/BeanUtil.java
@@ -173,5 +173,4 @@ public class BeanUtil {
throw new IllegalException("not find setter for" + propertiesName + "in" + o.getName(), e);
}
}
-
}
diff --git a/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/IdUtil.java b/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/IdUtil.java
new file mode 100644
index 00000000..e9bf9a50
--- /dev/null
+++ b/hippo4j-common/src/main/java/cn/hippo4j/common/toolkit/IdUtil.java
@@ -0,0 +1,85 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package cn.hippo4j.common.toolkit;
+
+import lombok.AccessLevel;
+import lombok.NoArgsConstructor;
+
+import java.util.UUID;
+
+/**
+ * id and uuid util,{@link UUID}
+ */
+@NoArgsConstructor(access = AccessLevel.PRIVATE)
+public class IdUtil {
+
+ /**
+ * get a random UUID
+ *
+ * @return UUID
+ */
+ public static String randomUUID() {
+ return toString(UUID.randomUUID(), false);
+ }
+
+ /**
+ * get a simple random UUID
+ *
+ * @return a simple UUID
+ */
+ public static String simpleUUID() {
+ return toString(UUID.randomUUID(), true);
+ }
+
+ /**
+ * toString
+ *
+ * @param uuid UUID
+ * @return UUID String
+ */
+ public static String toString(UUID uuid, boolean isSimple) {
+ long mostSigBits = uuid.getMostSignificantBits();
+ long leastSigBits = uuid.getLeastSignificantBits();
+ if (isSimple) {
+ return (digits(mostSigBits >> 32, 8) +
+ digits(mostSigBits >> 16, 4) +
+ digits(mostSigBits, 4) +
+ digits(leastSigBits >> 48, 4) +
+ digits(leastSigBits, 12));
+ } else {
+ return (digits(mostSigBits >> 32, 8) + "-" +
+ digits(mostSigBits >> 16, 4) + "-" +
+ digits(mostSigBits, 4) + "-" +
+ digits(leastSigBits >> 48, 4) + "-" +
+ digits(leastSigBits, 12));
+ }
+ }
+
+ /**
+ * Returns val represented by the specified number of hex digits.
+ * {@link UUID#digits(long, int)}
+ *
+ * @param val value
+ * @param digits position
+ * @return hex value
+ */
+ private static String digits(long val, int digits) {
+ long hi = 1L << (digits * 4);
+ return Long.toHexString(hi | (val & (hi - 1))).substring(1);
+ }
+}
diff --git a/hippo4j-common/src/test/java/cn/hippo4j/common/toolkit/BeanUtilTest.java b/hippo4j-common/src/test/java/cn/hippo4j/common/toolkit/BeanUtilTest.java
index 4ecf14df..b4895b06 100644
--- a/hippo4j-common/src/test/java/cn/hippo4j/common/toolkit/BeanUtilTest.java
+++ b/hippo4j-common/src/test/java/cn/hippo4j/common/toolkit/BeanUtilTest.java
@@ -27,7 +27,6 @@ import java.util.*;
public class BeanUtilTest {
-
@Test
public void beanToMapConvertTest() {
// 测试BeanToMap
diff --git a/hippo4j-common/src/test/java/cn/hippo4j/common/toolkit/IdUtilTest.java b/hippo4j-common/src/test/java/cn/hippo4j/common/toolkit/IdUtilTest.java
new file mode 100644
index 00000000..79700086
--- /dev/null
+++ b/hippo4j-common/src/test/java/cn/hippo4j/common/toolkit/IdUtilTest.java
@@ -0,0 +1,37 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package cn.hippo4j.common.toolkit;
+
+import org.junit.Assert;
+import org.junit.Test;
+
+public class IdUtilTest {
+
+ @Test
+ public void randomUUIDTest() {
+ String randomUUID = IdUtil.randomUUID();
+ Assert.assertNotNull(randomUUID);
+ }
+
+ @Test
+ public void simpleUUIDTest() {
+ String simpleUUID = IdUtil.simpleUUID();
+ Assert.assertNotNull(simpleUUID);
+ Assert.assertFalse(simpleUUID.contains("-"));
+ }
+}
\ No newline at end of file
diff --git a/hippo4j-common/src/test/java/cn/hippo4j/common/toolkit/ReflectUtilTest.java b/hippo4j-common/src/test/java/cn/hippo4j/common/toolkit/ReflectUtilTest.java
index 81a74847..104155be 100644
--- a/hippo4j-common/src/test/java/cn/hippo4j/common/toolkit/ReflectUtilTest.java
+++ b/hippo4j-common/src/test/java/cn/hippo4j/common/toolkit/ReflectUtilTest.java
@@ -123,7 +123,7 @@ public class ReflectUtilTest {
@Test
public void getMethodByNameTest() {
- Method field = ReflectUtil.getMethodByName(TestClass.class, "getPrivateField", String.class);
+ Method field = ReflectUtil.getMethodByName(TestClass.class, "setPrivateField", String.class);
Assert.assertNotNull(field);
}
diff --git a/hippo4j-core/src/main/java/cn/hippo4j/core/toolkit/IdentifyUtil.java b/hippo4j-core/src/main/java/cn/hippo4j/core/toolkit/IdentifyUtil.java
index 50da34a0..0975b773 100644
--- a/hippo4j-core/src/main/java/cn/hippo4j/core/toolkit/IdentifyUtil.java
+++ b/hippo4j-core/src/main/java/cn/hippo4j/core/toolkit/IdentifyUtil.java
@@ -18,10 +18,7 @@
package cn.hippo4j.core.toolkit;
import cn.hippo4j.common.config.ApplicationContextHolder;
-import cn.hippo4j.common.toolkit.StringUtil;
-import cn.hippo4j.common.toolkit.CollectionUtil;
-import cn.hippo4j.common.toolkit.Joiner;
-import cn.hippo4j.common.toolkit.ThreadUtil;
+import cn.hippo4j.common.toolkit.*;
import cn.hippo4j.core.toolkit.inet.InetUtils;
import org.springframework.core.env.ConfigurableEnvironment;
@@ -38,7 +35,7 @@ public class IdentifyUtil {
private static String IDENTIFY;
- public static final String CLIENT_IDENTIFICATION_VALUE = UUID.randomUUID().toString();
+ public static final String CLIENT_IDENTIFICATION_VALUE = IdUtil.simpleUUID();
/**
* Generate identify.
diff --git a/hippo4j-example/hippo4j-spring-boot-starter-adapter-kafka-example/src/main/java/cn/hippo4j/springboot/starter/adapter/kafka/example/produce/KafkaMessageProduce.java b/hippo4j-example/hippo4j-spring-boot-starter-adapter-kafka-example/src/main/java/cn/hippo4j/springboot/starter/adapter/kafka/example/produce/KafkaMessageProduce.java
index 04d01c71..9cfbddbd 100644
--- a/hippo4j-example/hippo4j-spring-boot-starter-adapter-kafka-example/src/main/java/cn/hippo4j/springboot/starter/adapter/kafka/example/produce/KafkaMessageProduce.java
+++ b/hippo4j-example/hippo4j-spring-boot-starter-adapter-kafka-example/src/main/java/cn/hippo4j/springboot/starter/adapter/kafka/example/produce/KafkaMessageProduce.java
@@ -17,6 +17,7 @@
package cn.hippo4j.springboot.starter.adapter.kafka.example.produce;
+import cn.hippo4j.common.toolkit.IdUtil;
import cn.hippo4j.common.toolkit.JSONUtil;
import cn.hippo4j.example.core.dto.SendMessageDTO;
import lombok.AllArgsConstructor;
@@ -26,8 +27,6 @@ import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
-import java.util.UUID;
-
/**
* Kafka message produce.
*/
@@ -44,7 +43,7 @@ public class KafkaMessageProduce {
@GetMapping("/message/send")
public String sendMessage(Integer count) {
for (int i = 0; i < count; i++) {
- String keys = UUID.randomUUID().toString();
+ String keys = IdUtil.randomUUID();
SendMessageDTO payload = SendMessageDTO.builder()
.receiver("156011xxx91")
.uid(keys)
diff --git a/hippo4j-example/hippo4j-spring-boot-starter-adapter-rabbitmq-example/src/main/java/cn/hippo4j/springboot/starter/adapter/rabbitmq/example/producer/MessageProduce.java b/hippo4j-example/hippo4j-spring-boot-starter-adapter-rabbitmq-example/src/main/java/cn/hippo4j/springboot/starter/adapter/rabbitmq/example/producer/MessageProduce.java
index c0a66817..5113bad8 100644
--- a/hippo4j-example/hippo4j-spring-boot-starter-adapter-rabbitmq-example/src/main/java/cn/hippo4j/springboot/starter/adapter/rabbitmq/example/producer/MessageProduce.java
+++ b/hippo4j-example/hippo4j-spring-boot-starter-adapter-rabbitmq-example/src/main/java/cn/hippo4j/springboot/starter/adapter/rabbitmq/example/producer/MessageProduce.java
@@ -17,6 +17,7 @@
package cn.hippo4j.springboot.starter.adapter.rabbitmq.example.producer;
+import cn.hippo4j.common.toolkit.IdUtil;
import cn.hippo4j.example.core.dto.SendMessageDTO;
import cn.hippo4j.springboot.starter.adapter.rabbitmq.example.constants.SimpleMQConstant;
import lombok.AllArgsConstructor;
@@ -26,8 +27,6 @@ import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
-import java.util.UUID;
-
/**
* Message produce.
*/
@@ -42,7 +41,7 @@ public class MessageProduce {
@GetMapping("/message/send")
public String sendMessage(Integer count) {
for (int i = 0; i < count; i++) {
- String keys = UUID.randomUUID().toString();
+ String keys = IdUtil.randomUUID();
SendMessageDTO payload = SendMessageDTO.builder()
.receiver("156011xxx91")
.uid(keys)
diff --git a/hippo4j-example/hippo4j-spring-boot-starter-adapter-spring-cloud-stream-rabbitmq-example/src/main/java/cn/hippo4j/springboot/starter/adapter/springcloud/stream/rabbitmq/example/MessageProduce.java b/hippo4j-example/hippo4j-spring-boot-starter-adapter-spring-cloud-stream-rabbitmq-example/src/main/java/cn/hippo4j/springboot/starter/adapter/springcloud/stream/rabbitmq/example/MessageProduce.java
index bf24a379..eeb2953a 100644
--- a/hippo4j-example/hippo4j-spring-boot-starter-adapter-spring-cloud-stream-rabbitmq-example/src/main/java/cn/hippo4j/springboot/starter/adapter/springcloud/stream/rabbitmq/example/MessageProduce.java
+++ b/hippo4j-example/hippo4j-spring-boot-starter-adapter-spring-cloud-stream-rabbitmq-example/src/main/java/cn/hippo4j/springboot/starter/adapter/springcloud/stream/rabbitmq/example/MessageProduce.java
@@ -17,6 +17,7 @@
package cn.hippo4j.springboot.starter.adapter.springcloud.stream.rabbitmq.example;
+import cn.hippo4j.common.toolkit.IdUtil;
import cn.hippo4j.common.toolkit.JSONUtil;
import cn.hippo4j.example.core.dto.SendMessageDTO;
import lombok.AllArgsConstructor;
@@ -26,8 +27,6 @@ import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
-import java.util.UUID;
-
/**
* Message produce.
*/
@@ -50,7 +49,7 @@ public class MessageProduce {
}
private void sendMessage0() {
- String keys = UUID.randomUUID().toString();
+ String keys = IdUtil.randomUUID();
SendMessageDTO payload = SendMessageDTO.builder()
.receiver("156011xxx91")
.uid(keys)
diff --git a/hippo4j-example/hippo4j-spring-boot-starter-adapter-spring-cloud-stream-rocketmq-example/src/main/java/cn/hippo4j/springboot/starter/adapter/springcloud/stream/rocketmq/example/MessageProduce.java b/hippo4j-example/hippo4j-spring-boot-starter-adapter-spring-cloud-stream-rocketmq-example/src/main/java/cn/hippo4j/springboot/starter/adapter/springcloud/stream/rocketmq/example/MessageProduce.java
index 0255a33d..b7f9d590 100644
--- a/hippo4j-example/hippo4j-spring-boot-starter-adapter-spring-cloud-stream-rocketmq-example/src/main/java/cn/hippo4j/springboot/starter/adapter/springcloud/stream/rocketmq/example/MessageProduce.java
+++ b/hippo4j-example/hippo4j-spring-boot-starter-adapter-spring-cloud-stream-rocketmq-example/src/main/java/cn/hippo4j/springboot/starter/adapter/springcloud/stream/rocketmq/example/MessageProduce.java
@@ -17,6 +17,7 @@
package cn.hippo4j.springboot.starter.adapter.springcloud.stream.rocketmq.example;
+import cn.hippo4j.common.toolkit.IdUtil;
import cn.hippo4j.common.toolkit.JSONUtil;
import cn.hippo4j.example.core.dto.SendMessageDTO;
import lombok.AllArgsConstructor;
@@ -28,8 +29,6 @@ import org.springframework.messaging.support.MessageBuilder;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
-import java.util.UUID;
-
/**
* Message produce.
*/
@@ -55,7 +54,7 @@ public class MessageProduce {
}
private void sendMessage(String tags) {
- String keys = UUID.randomUUID().toString();
+ String keys = IdUtil.randomUUID();
SendMessageDTO payload = SendMessageDTO.builder()
.receiver("156011xxx91")
.uid(keys)
diff --git a/hippo4j-message/src/main/java/cn/hippo4j/message/service/AlarmControlHandler.java b/hippo4j-message/src/main/java/cn/hippo4j/message/service/AlarmControlHandler.java
index 790210bc..c85b51ec 100644
--- a/hippo4j-message/src/main/java/cn/hippo4j/message/service/AlarmControlHandler.java
+++ b/hippo4j-message/src/main/java/cn/hippo4j/message/service/AlarmControlHandler.java
@@ -18,6 +18,7 @@
package cn.hippo4j.message.service;
import cn.hippo4j.common.constant.Constants;
+import cn.hippo4j.common.toolkit.IdUtil;
import cn.hippo4j.common.toolkit.StringUtil;
import cn.hippo4j.message.dto.AlarmControlDTO;
import com.github.benmanes.caffeine.cache.Cache;
@@ -25,7 +26,6 @@ import com.github.benmanes.caffeine.cache.Caffeine;
import java.util.HashMap;
import java.util.Map;
-import java.util.UUID;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.locks.ReentrantLock;
@@ -59,7 +59,7 @@ public class AlarmControlHandler {
pkId = cache.getIfPresent(alarmControl.getTypeEnum().name());
if (StringUtil.isBlank(pkId)) {
// Val meaningless.
- cache.put(alarmControl.getTypeEnum().name(), UUID.randomUUID().toString());
+ cache.put(alarmControl.getTypeEnum().name(), IdUtil.simpleUUID());
return true;
}
} finally {
diff --git a/hippo4j-spring-boot/hippo4j-spring-boot-starter/src/main/java/cn/hippo4j/springboot/starter/core/ClientWorker.java b/hippo4j-spring-boot/hippo4j-spring-boot-starter/src/main/java/cn/hippo4j/springboot/starter/core/ClientWorker.java
index 851db187..a3840073 100644
--- a/hippo4j-spring-boot/hippo4j-spring-boot-starter/src/main/java/cn/hippo4j/springboot/starter/core/ClientWorker.java
+++ b/hippo4j-spring-boot/hippo4j-spring-boot-starter/src/main/java/cn/hippo4j/springboot/starter/core/ClientWorker.java
@@ -20,6 +20,7 @@ package cn.hippo4j.springboot.starter.core;
import cn.hippo4j.common.model.ThreadPoolParameterInfo;
import cn.hippo4j.common.toolkit.ContentUtil;
import cn.hippo4j.common.toolkit.GroupKey;
+import cn.hippo4j.common.toolkit.IdUtil;
import cn.hippo4j.common.toolkit.JSONUtil;
import cn.hippo4j.common.web.base.Result;
import cn.hippo4j.common.design.builder.ThreadFactoryBuilder;
@@ -152,7 +153,7 @@ public class ClientWorker {
public List checkUpdateTpIds(String probeUpdateString, boolean isInitializingCacheList) {
Map params = new HashMap(2);
params.put(PROBE_MODIFY_REQUEST, probeUpdateString);
- params.put(WEIGHT_CONFIGS, UUID.randomUUID().toString());
+ params.put(WEIGHT_CONFIGS, IdUtil.simpleUUID());
Map headers = new HashMap(2);
headers.put(LONG_PULLING_TIMEOUT, "" + timeout);
// Confirm the identity of the client, and can be modified separately when modifying the thread pool configuration.
diff --git a/pom.xml b/pom.xml
index 519ba0ee..d7a593b3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -89,7 +89,6 @@
okhttp
${okhttp3.version}
-
org.apache.commons
commons-lang3