From 9b4433fddf5b401edb0aace8a404ac733b122702 Mon Sep 17 00:00:00 2001
From: 田源 <tianyuan@vci-tech.com>
Date: 星期四, 03 四月 2025 14:35:02 +0800
Subject: [PATCH] 添加非密字段显示
---
Source/BladeX-Tool/blade-core-tool/src/main/java/org/springblade/core/tool/support/Kv.java | 221 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 221 insertions(+), 0 deletions(-)
diff --git a/Source/BladeX-Tool/blade-core-tool/src/main/java/org/springblade/core/tool/support/Kv.java b/Source/BladeX-Tool/blade-core-tool/src/main/java/org/springblade/core/tool/support/Kv.java
new file mode 100644
index 0000000..1c9a4e1
--- /dev/null
+++ b/Source/BladeX-Tool/blade-core-tool/src/main/java/org/springblade/core/tool/support/Kv.java
@@ -0,0 +1,221 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 搴勯獮 (smallchill@163.com)
+ */
+package org.springblade.core.tool.support;
+
+import org.springblade.core.tool.utils.Func;
+import org.springframework.util.LinkedCaseInsensitiveMap;
+
+import java.sql.Time;
+import java.sql.Timestamp;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * 閾惧紡map
+ *
+ * @author Chill
+ */
+public class Kv extends LinkedCaseInsensitiveMap<Object> {
+
+ private Kv() {
+ super();
+ }
+
+ /**
+ * 鍒涘缓Kv
+ *
+ * @return Kv
+ */
+ public static Kv create() {
+ return new Kv();
+ }
+
+ public static <K, V> HashMap<K, V> newMap() {
+ return new HashMap<>(16);
+ }
+
+ /**
+ * 璁剧疆鍒�
+ *
+ * @param attr 灞炴��
+ * @param value 鍊�
+ * @return 鏈韩
+ */
+ public Kv set(String attr, Object value) {
+ this.put(attr, value);
+ return this;
+ }
+
+ /**
+ * 璁剧疆鍏ㄩ儴
+ *
+ * @param map 灞炴��
+ * @return 鏈韩
+ */
+ public Kv setAll(Map<? extends String, ?> map) {
+ if (map != null) {
+ this.putAll(map);
+ }
+ return this;
+ }
+
+ /**
+ * 璁剧疆鍒楋紝褰撻敭鎴栧�间负null鏃跺拷鐣�
+ *
+ * @param attr 灞炴��
+ * @param value 鍊�
+ * @return 鏈韩
+ */
+ public Kv setIgnoreNull(String attr, Object value) {
+ if (attr != null && value != null) {
+ set(attr, value);
+ }
+ return this;
+ }
+
+ public Object getObj(String key) {
+ return super.get(key);
+ }
+
+ /**
+ * 鑾峰緱鐗瑰畾绫诲瀷鍊�
+ *
+ * @param <T> 鍊肩被鍨�
+ * @param attr 瀛楁鍚�
+ * @param defaultValue 榛樿鍊�
+ * @return 瀛楁鍊�
+ */
+ @SuppressWarnings("unchecked")
+ public <T> T get(String attr, T defaultValue) {
+ final Object result = get(attr);
+ return (T) (result != null ? result : defaultValue);
+ }
+
+ /**
+ * 鑾峰緱鐗瑰畾绫诲瀷鍊�
+ *
+ * @param attr 瀛楁鍚�
+ * @return 瀛楁鍊�
+ */
+ public String getStr(String attr) {
+ return Func.toStr(get(attr), null);
+ }
+
+ /**
+ * 鑾峰緱鐗瑰畾绫诲瀷鍊�
+ *
+ * @param attr 瀛楁鍚�
+ * @return 瀛楁鍊�
+ */
+ public Integer getInt(String attr) {
+ return Func.toInt(get(attr), -1);
+ }
+
+ /**
+ * 鑾峰緱鐗瑰畾绫诲瀷鍊�
+ *
+ * @param attr 瀛楁鍚�
+ * @return 瀛楁鍊�
+ */
+ public Long getLong(String attr) {
+ return Func.toLong(get(attr), -1L);
+ }
+
+ /**
+ * 鑾峰緱鐗瑰畾绫诲瀷鍊�
+ *
+ * @param attr 瀛楁鍚�
+ * @return 瀛楁鍊�
+ */
+ public Float getFloat(String attr) {
+ return Func.toFloat(get(attr), null);
+ }
+
+ public Double getDouble(String attr) {
+ return Func.toDouble(get(attr), null);
+ }
+
+
+ /**
+ * 鑾峰緱鐗瑰畾绫诲瀷鍊�
+ *
+ * @param attr 瀛楁鍚�
+ * @return 瀛楁鍊�
+ */
+ public Boolean getBool(String attr) {
+ return Func.toBoolean(get(attr), null);
+ }
+
+ /**
+ * 鑾峰緱鐗瑰畾绫诲瀷鍊�
+ *
+ * @param attr 瀛楁鍚�
+ * @return 瀛楁鍊�
+ */
+ public byte[] getBytes(String attr) {
+ return get(attr, null);
+ }
+
+ /**
+ * 鑾峰緱鐗瑰畾绫诲瀷鍊�
+ *
+ * @param attr 瀛楁鍚�
+ * @return 瀛楁鍊�
+ */
+ public Date getDate(String attr) {
+ return get(attr, null);
+ }
+
+ /**
+ * 鑾峰緱鐗瑰畾绫诲瀷鍊�
+ *
+ * @param attr 瀛楁鍚�
+ * @return 瀛楁鍊�
+ */
+ public Time getTime(String attr) {
+ return get(attr, null);
+ }
+
+ /**
+ * 鑾峰緱鐗瑰畾绫诲瀷鍊�
+ *
+ * @param attr 瀛楁鍚�
+ * @return 瀛楁鍊�
+ */
+ public Timestamp getTimestamp(String attr) {
+ return get(attr, null);
+ }
+
+ /**
+ * 鑾峰緱鐗瑰畾绫诲瀷鍊�
+ *
+ * @param attr 瀛楁鍚�
+ * @return 瀛楁鍊�
+ */
+ public Number getNumber(String attr) {
+ return get(attr, null);
+ }
+
+ @Override
+ public Kv clone() {
+ Kv clone = new Kv();
+ clone.putAll(this);
+ return clone;
+ }
+
+}
--
Gitblit v1.9.3