tianyunperfect пре 4 година
родитељ
комит
cfb967f49f

+ 1 - 1
springboot-common/src/main/java/com/alvin/common/util/DateUtil.java → springboot-common/src/main/java/com/alvin/common/util/DateUtils.java

@@ -15,7 +15,7 @@ import java.time.temporal.TemporalAdjusters;
  * @author tianyunperfect
  * @date 2020/05/28
  */
-public class DateUtil {
+public class DateUtils {
 
     /**
      * 当前秒

+ 1 - 1
springboot-common/src/main/java/com/alvin/common/util/EmailUtil.java → springboot-common/src/main/java/com/alvin/common/util/EmailUtils.java

@@ -1,4 +1,4 @@
 package com.alvin.common.util;
 
-public class EmailUtil {
+public class EmailUtils {
 }

+ 1 - 1
springboot-common/src/main/java/com/alvin/common/util/FileUtil.java → springboot-common/src/main/java/com/alvin/common/util/FileUtils.java

@@ -11,7 +11,7 @@ import java.nio.charset.StandardCharsets;
  * @author tianyunperfect
  * @date 2021/01/15
  */
-public class FileUtil {
+public class FileUtils {
     /**
      * 获取到 BF,一定要手动关闭
      *

+ 5 - 5
springboot-common/src/main/java/com/alvin/common/util/HttpUtil.java → springboot-common/src/main/java/com/alvin/common/util/HttpUtils.java

@@ -40,7 +40,7 @@ import java.util.Map;
 
 @Data
 @Accessors(chain = true)
-public class HttpUtil {
+public class HttpUtils {
 
 
     /** 代理  */
@@ -65,7 +65,7 @@ public class HttpUtil {
      */
     private List<NameValuePair> nameValuePairs = new ArrayList<>();
 
-    public HttpUtil(String urlStr) {
+    public HttpUtils(String urlStr) {
         // 5秒
         this.urlStr = urlStr;
     }
@@ -76,7 +76,7 @@ public class HttpUtil {
      * @param paramsMap
      * @throws URISyntaxException
      */
-    public HttpUtil setParams(HashMap<String, String> paramsMap){
+    public HttpUtils setParams(HashMap<String, String> paramsMap){
         for (Map.Entry<String, String> entry : paramsMap.entrySet()) {
             nameValuePairs.add(new BasicNameValuePair(entry.getKey(), entry.getValue()));
         }
@@ -261,7 +261,7 @@ public class HttpUtil {
      * @param port
      * @param httpType
      */
-    public HttpUtil setProxy(String ip, int port, String httpType) {
+    public HttpUtils setProxy(String ip, int port, String httpType) {
         this.proxy = new HttpHost(ip, port, httpType);
         return this;
     }
@@ -363,7 +363,7 @@ public class HttpUtil {
     }
 
     public static void main(String[] args) throws Exception {
-        String s = new HttpUtil("https://www.baidu.com").get();
+        String s = new HttpUtils("https://www.baidu.com").get();
         System.out.println(s);
     }
 }

+ 2 - 2
springboot-common/src/main/java/com/alvin/common/util/JsonUtil.java → springboot-common/src/main/java/com/alvin/common/util/JsonUtils.java

@@ -17,10 +17,10 @@ import java.util.Map;
  * @author tianyunperfect
  * @date 2020/05/20
  */
-public class JsonUtil {
+public class JsonUtils {
     private static final Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").create();
 
-    public JsonUtil() {
+    public JsonUtils() {
     }
 
     /**

+ 80 - 0
springboot-common/src/main/java/com/alvin/common/util/ThreadPoolUtils.java

@@ -0,0 +1,80 @@
+package com.alvin.common.util;
+
+import java.util.concurrent.*;
+import java.util.concurrent.atomic.AtomicInteger;
+
+/**
+ * 线程池工具类
+ *
+ * @author tianyunperfect
+ * @date 2021/02/03
+ */
+public class ThreadPoolUtils {
+
+    /**
+     * 获取线程池
+     *
+     * @param corePoolSize    核心池大小
+     * @param maximumPoolSize 最大池大小
+     * @param keepAliveTime   维持时间
+     * @param unit            单位
+     * @param queueSize       队列的大小
+     * @param poolName        池名称
+     * @param handler         拒绝策略
+     * @return {@link ThreadPoolExecutor}
+     */
+    public static ThreadPoolExecutor getThreadPool(
+            int corePoolSize,
+            int maximumPoolSize,
+            long keepAliveTime,
+            TimeUnit unit,
+            int queueSize,
+            String poolName,
+            RejectedExecutionHandler handler) {
+        return new ThreadPoolExecutor(
+                corePoolSize, maximumPoolSize,
+                keepAliveTime, unit,
+                new LinkedBlockingDeque<>(queueSize),
+                new MyThreadFactory(poolName),
+                handler
+        );
+    }
+
+
+    /**
+     * 修改于默认线程池工程类,添加了自定义线程名
+     *
+     * @author tianyunperfect
+     * @date 2021/02/03
+     */
+    public static class MyThreadFactory implements ThreadFactory {
+        private static final AtomicInteger poolNumber = new AtomicInteger(1);
+        private final ThreadGroup group;
+        private final AtomicInteger threadNumber = new AtomicInteger(1);
+        private final String namePrefix;
+
+        MyThreadFactory(String name) {
+            SecurityManager s = System.getSecurityManager();
+            group = (s != null) ? s.getThreadGroup() :
+                    Thread.currentThread().getThreadGroup();
+            //自定义名称
+            if (name == null || name.isEmpty()) {
+                name = "pool";
+            }
+            namePrefix = name + "-" +
+                    poolNumber.getAndIncrement() +
+                    "-thread-";
+        }
+
+        public Thread newThread(Runnable r) {
+            Thread t = new Thread(group, r,
+                    namePrefix + threadNumber.getAndIncrement(),
+                    0);
+            if (t.isDaemon())
+                t.setDaemon(false);
+            if (t.getPriority() != Thread.NORM_PRIORITY)
+                t.setPriority(Thread.NORM_PRIORITY);
+            return t;
+        }
+    }
+}