diff --git a/mica-core/src/main/java/net/dreamlu/mica/core/compiler/ByteCodeLoader.java b/mica-core/src/main/java/net/dreamlu/mica/core/compiler/ByteCodeLoader.java index f0a5fdd146c02aedf5347b93219d36c7ccf7a216..526e40ebfde6b17be0f85c4133025642f4494445 100644 --- a/mica-core/src/main/java/net/dreamlu/mica/core/compiler/ByteCodeLoader.java +++ b/mica-core/src/main/java/net/dreamlu/mica/core/compiler/ByteCodeLoader.java @@ -33,7 +33,7 @@ public class ByteCodeLoader extends SecureClassLoader { /** * Map which represents class name and its compiled java object */ - private static final ConcurrentMap> javaFileObjectMap = new ConcurrentHashMap<>(); + private static final ConcurrentMap> JAVA_FILE_OBJECT_MAP = new ConcurrentHashMap<>(); private final String className; private final byte[] byteCode; @@ -68,7 +68,7 @@ public class ByteCodeLoader extends SecureClassLoader { */ public static Class load(String className, byte[] byteCode) { CheckedFunction> classLoadFunc = (key) -> new ByteCodeLoader(key, byteCode).loadClass(className); - return CollectionUtil.computeIfAbsent(javaFileObjectMap, className, Unchecked.function(classLoadFunc)); + return CollectionUtil.computeIfAbsent(JAVA_FILE_OBJECT_MAP, className, Unchecked.function(classLoadFunc)); } /** diff --git a/mica-core/src/main/java/net/dreamlu/mica/core/utils/BeanUtil.java b/mica-core/src/main/java/net/dreamlu/mica/core/utils/BeanUtil.java index 4874ce4662e67fe05601d13df4f7ac67761f6cf2..952594ea157ba3a905caad14c158ec2cf08d1d61 100644 --- a/mica-core/src/main/java/net/dreamlu/mica/core/utils/BeanUtil.java +++ b/mica-core/src/main/java/net/dreamlu/mica/core/utils/BeanUtil.java @@ -506,12 +506,12 @@ public class BeanUtil extends org.springframework.beans.BeanUtils { Assert.notNull(src, "diff Map src is null."); Assert.notNull(src, "diff Map dist is null."); // 改变 - Map difference = new HashMap<>(); + Map difference = new HashMap<>(8); difference.putAll(src); difference.putAll(dist); difference.entrySet().removeAll(src.entrySet()); // 老值 - Map oldValues = new HashMap<>(); + Map oldValues = new HashMap<>(8); difference.keySet().forEach((k) -> oldValues.put(k, src.get(k))); BeanDiff diff = new BeanDiff(); diff.getFields().addAll(difference.keySet()); diff --git a/mica-core/src/main/java/net/dreamlu/mica/core/utils/CountMap.java b/mica-core/src/main/java/net/dreamlu/mica/core/utils/CountMap.java index 052a462773baecbd8dd2e9e5b9b27dac2555b63e..56900930ba8b2be41309f0cdc911e890ef799310 100644 --- a/mica-core/src/main/java/net/dreamlu/mica/core/utils/CountMap.java +++ b/mica-core/src/main/java/net/dreamlu/mica/core/utils/CountMap.java @@ -32,7 +32,7 @@ public class CountMap { private final Map data; public CountMap() { - this(new HashMap<>()); + this(new HashMap<>(8)); } /** diff --git a/mica-ip2region/src/main/java/net/dreamlu/mica/ip2region/core/DbSearcher.java b/mica-ip2region/src/main/java/net/dreamlu/mica/ip2region/core/DbSearcher.java index cb0e35b4f81e4056e18d17aeea5c232b56936e09..bee097b11b5599d1d3625961d91b3a953d211ee2 100644 --- a/mica-ip2region/src/main/java/net/dreamlu/mica/ip2region/core/DbSearcher.java +++ b/mica-ip2region/src/main/java/net/dreamlu/mica/ip2region/core/DbSearcher.java @@ -14,9 +14,6 @@ import java.nio.charset.StandardCharsets; * @author chenxin */ public class DbSearcher { - public static final int BTREE_ALGORITHM = 1; - public static final int BINARY_ALGORITHM = 2; - public static final int MEMORY_ALGORITYM = 3; /** * db config @@ -274,7 +271,9 @@ public class DbSearcher { } //not matched - if (dataptr == 0) return null; + if (dataptr == 0) { + return null; + } //3. get the data int dataLen = (int) ((dataptr >> 24) & 0xFF); @@ -342,7 +341,9 @@ public class DbSearcher { } //not matched - if (dataptr == 0) return null; + if (dataptr == 0) { + return null; + } //get the data int dataLen = (int) ((dataptr >> 24) & 0xFF); diff --git a/mica-ip2region/src/main/java/net/dreamlu/mica/ip2region/utils/Ip2regionUtil.java b/mica-ip2region/src/main/java/net/dreamlu/mica/ip2region/utils/Ip2regionUtil.java index 62a2b7ea4263683aaa7132ed672d14ab5233e7f2..710ec3d76da7ddcb8064cba1781101211cdc971c 100644 --- a/mica-ip2region/src/main/java/net/dreamlu/mica/ip2region/utils/Ip2regionUtil.java +++ b/mica-ip2region/src/main/java/net/dreamlu/mica/ip2region/utils/Ip2regionUtil.java @@ -85,7 +85,9 @@ public class Ip2regionUtil { */ public static long ip2long(String ip) { String[] p = ip.split("\\."); - if (p.length != 4) return 0; + if (p.length != 4) { + return 0; + } int p1 = ((Integer.parseInt(p[0]) << 24) & 0xFF000000); int p2 = ((Integer.parseInt(p[1]) << 16) & 0x00FF0000); @@ -116,12 +118,18 @@ public class Ip2regionUtil { */ public static boolean isIpAddress(String ip) { String[] p = ip.split("\\."); - if (p.length != 4) return false; + if (p.length != 4) { + return false; + } for (String pp : p) { - if (pp.length() > 3) return false; + if (pp.length() > 3) { + return false; + } int val = Integer.parseInt(pp); - if (val > 255) return false; + if (val > 255) { + return false; + } } return true; diff --git a/mica-laytpl/src/main/java/net/dreamlu/mica/laytpl/MicaTemplate.java b/mica-laytpl/src/main/java/net/dreamlu/mica/laytpl/MicaTemplate.java index 12b6542c3ccb95fd8bc136e60a7fd2ccdd44e84c..4895839c9bec6fdaf34673f9c2bccee6d2f8e942 100644 --- a/mica-laytpl/src/main/java/net/dreamlu/mica/laytpl/MicaTemplate.java +++ b/mica-laytpl/src/main/java/net/dreamlu/mica/laytpl/MicaTemplate.java @@ -116,7 +116,7 @@ public class MicaTemplate implements ApplicationContextAware, InitializingBean { final ScriptEngineManager engineManager = new ScriptEngineManager(); final ScriptEngine engine = engineManager.getEngineByMimeType("text/javascript"); Bindings bindings = engine.createBindings(); - Map config = new HashMap<>(2); + Map config = new HashMap<>(4); config.put("open", tplProperties.getOpen()); config.put("close", tplProperties.getClose()); bindings.put("console", console); diff --git a/mica-logging/src/main/java/net/dreamlu/mica/logging/appender/LoggingJsonFileAppender.java b/mica-logging/src/main/java/net/dreamlu/mica/logging/appender/LoggingJsonFileAppender.java index ef4220a8800c4c9f4a375ff20ce4467b406196d5..62ed9eb5bac219ac07161142224ca147bef2e459 100644 --- a/mica-logging/src/main/java/net/dreamlu/mica/logging/appender/LoggingJsonFileAppender.java +++ b/mica-logging/src/main/java/net/dreamlu/mica/logging/appender/LoggingJsonFileAppender.java @@ -59,7 +59,7 @@ public class LoggingJsonFileAppender implements ILoggingAppender { String logDir = environment.getProperty("logging.file.path", LoggingUtil.DEFAULT_LOG_DIR); this.logAllFile = logDir + CharPool.SLASH + appName + CharPool.SLASH + LoggingUtil.LOG_FILE_ALL; // 4. json 自定义字段 - Map customFields = new HashMap<>(); + Map customFields = new HashMap<>(4); customFields.put("appName", appName); customFields.put("profile", profile); this.customFieldsJson = JsonUtil.toJson(customFields); diff --git a/mica-logging/src/main/java/net/dreamlu/mica/logging/appender/LoggingLogStashAppender.java b/mica-logging/src/main/java/net/dreamlu/mica/logging/appender/LoggingLogStashAppender.java index 0bd1eff10085c1eb617317ff93c40b04ba52a9e7..38d9f2a6e488f0f443f4388cbc9319d0f7187fc5 100644 --- a/mica-logging/src/main/java/net/dreamlu/mica/logging/appender/LoggingLogStashAppender.java +++ b/mica-logging/src/main/java/net/dreamlu/mica/logging/appender/LoggingLogStashAppender.java @@ -49,7 +49,7 @@ public class LoggingLogStashAppender implements ILoggingAppender { String appName = environment.getRequiredProperty(MicaConstant.SPRING_APP_NAME_KEY); String profile = environment.getRequiredProperty(MicaConstant.ACTIVE_PROFILES_PROPERTY); // 2. json 自定义字段 - Map customFields = new HashMap<>(); + Map customFields = new HashMap<>(4); customFields.put("appName", appName); customFields.put("profile", profile); this.customFieldsJson = JsonUtil.toJson(customFields); diff --git a/mica-logging/src/main/java/net/dreamlu/mica/logging/config/LoggingInitializer.java b/mica-logging/src/main/java/net/dreamlu/mica/logging/config/LoggingInitializer.java index 5d451bca9b69e5a047e205e30e5655cea9fda934..fb4c14c3c7d7477f8a133ee01ee87407e2103e87 100644 --- a/mica-logging/src/main/java/net/dreamlu/mica/logging/config/LoggingInitializer.java +++ b/mica-logging/src/main/java/net/dreamlu/mica/logging/config/LoggingInitializer.java @@ -22,6 +22,10 @@ import org.springframework.boot.SpringApplication; import org.springframework.boot.env.EnvironmentPostProcessor; import org.springframework.core.Ordered; import org.springframework.core.env.ConfigurableEnvironment; +import org.springframework.core.env.MapPropertySource; + +import java.util.HashMap; +import java.util.Map; /** * logging 日志初始化 @@ -30,13 +34,21 @@ import org.springframework.core.env.ConfigurableEnvironment; */ @AutoEnvPostProcessor public class LoggingInitializer implements EnvironmentPostProcessor, Ordered { + public static final String LOGGING_FILE_PATH_KEY = "logging.file.path"; + public static final String LOGGING_FILE_NAME_KEY = "logging.file.name"; + public static final String MICA_LOGGING_PROPERTY_SOURCE_NAME = "micaLoggingPropertySource"; @Override public void postProcessEnvironment(ConfigurableEnvironment environment, SpringApplication application) { // 读取系统配置的日志目录,默认为项目下 logs - String logBase = environment.getProperty("logging.file.path", LoggingUtil.DEFAULT_LOG_DIR); + String logBase = environment.getProperty(LOGGING_FILE_PATH_KEY, LoggingUtil.DEFAULT_LOG_DIR); // 用于 spring boot admin 中展示日志 - System.setProperty("logging.file.name", logBase + "/${spring.application.name}/" + LoggingUtil.LOG_FILE_ALL); + if (!environment.containsProperty(LOGGING_FILE_NAME_KEY)) { + Map map = new HashMap<>(2); + map.put(LOGGING_FILE_NAME_KEY, logBase + "/${spring.application.name}/" + LoggingUtil.LOG_FILE_ALL); + MapPropertySource propertySource = new MapPropertySource(MICA_LOGGING_PROPERTY_SOURCE_NAME, map); + environment.getPropertySources().addLast(propertySource); + } } @Override diff --git a/mica-logging/src/main/java/net/dreamlu/mica/logging/config/MicaLoggingConfiguration.java b/mica-logging/src/main/java/net/dreamlu/mica/logging/config/MicaLoggingConfiguration.java index 7596c85abda979dc9d5ee1cd90506684acedeff8..87172fb8791f37f0db49b4262817e96b0c81f5d9 100644 --- a/mica-logging/src/main/java/net/dreamlu/mica/logging/config/MicaLoggingConfiguration.java +++ b/mica-logging/src/main/java/net/dreamlu/mica/logging/config/MicaLoggingConfiguration.java @@ -126,7 +126,7 @@ public class MicaLoggingConfiguration { @Order(Ordered.HIGHEST_PRECEDENCE) private static class LoggingCondition extends SpringBootCondition { private static final String LOG_STASH_CLASS_NAME = "net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder"; - private static final String Loki_CLASS_NAME = "com.github.loki4j.logback.Loki4jAppender"; + private static final String LOKI_CLASS_NAME = "com.github.loki4j.logback.Loki4jAppender"; @Override public ConditionOutcome getMatchOutcome(ConditionContext context, AnnotatedTypeMetadata metadata) { @@ -179,7 +179,7 @@ public class MicaLoggingConfiguration { } private static boolean hasLokiDependencies(ClassLoader classLoader) { - return ClassUtils.isPresent(Loki_CLASS_NAME, classLoader); + return ClassUtils.isPresent(LOKI_CLASS_NAME, classLoader); } } diff --git a/mica-metrics/src/main/java/net/dreamlu/mica/metrics/druid/DruidMetricsConfiguration.java b/mica-metrics/src/main/java/net/dreamlu/mica/metrics/druid/DruidMetricsConfiguration.java index 642694eb7675b67ce5ddadcf888df1bc7f9c37d0..0f04fc941c9498ade89ca71046e0002ea5534bec 100644 --- a/mica-metrics/src/main/java/net/dreamlu/mica/metrics/druid/DruidMetricsConfiguration.java +++ b/mica-metrics/src/main/java/net/dreamlu/mica/metrics/druid/DruidMetricsConfiguration.java @@ -61,7 +61,7 @@ public class DruidMetricsConfiguration { @Bean public DruidMetrics druidMetrics(ObjectProvider> dataSourcesProvider) { Map dataSourceMap = dataSourcesProvider.getIfAvailable(HashMap::new); - Map druidDataSourceMap = new HashMap<>(1); + Map druidDataSourceMap = new HashMap<>(2); dataSourceMap.forEach((name, dataSource) -> { // 保证连接池数据和 DataSourcePoolMetadataProvider 的一致 druidDataSourceMap.put(getDataSourceName(name), DataSourceUnwrapper.unwrap(dataSource, DruidDataSource.class)); diff --git a/mica-spider/src/main/java/net/dreamlu/mica/spider/http/HostCookieJar.java b/mica-spider/src/main/java/net/dreamlu/mica/spider/http/HostCookieJar.java index 14f29ebab6bc37a4c96eeaf2a5d1a82142bc52ce..91c1bfbd1301152490a0876c136673ffef891ee9 100644 --- a/mica-spider/src/main/java/net/dreamlu/mica/spider/http/HostCookieJar.java +++ b/mica-spider/src/main/java/net/dreamlu/mica/spider/http/HostCookieJar.java @@ -33,14 +33,14 @@ public enum HostCookieJar implements CookieJar { */ INSTANCE; - private static final Map> COOKIE_MAP = new HashMap<>(); + private static final Map> COOKIE_MAP = new HashMap<>(8); @Override public void saveFromResponse(HttpUrl url, List cookies) { String host = url.host(); Map cookieMap = COOKIE_MAP.get(host); if (cookieMap == null) { - cookieMap = new HashMap<>(); + cookieMap = new HashMap<>(8); } // 便于新 cookie 替换老的 cookie for (Cookie cookie : cookies) {