浏览代码

add method for #I2C42H

Looly 5 年之前
父节点
当前提交
2effcb4c0e
共有 2 个文件被更改,包括 33 次插入1 次删除
  1. 2 1
      CHANGELOG.md
  2. 31 0
      hutool-setting/src/main/java/cn/hutool/setting/Setting.java

+ 2 - 1
CHANGELOG.md

@@ -3,7 +3,7 @@
 
 
 -------------------------------------------------------------------------------------------------------------
 -------------------------------------------------------------------------------------------------------------
 
 
-# 5.5.7 (2021-01-03)
+# 5.5.7 (2021-01-06)
 
 
 ### 新特性
 ### 新特性
 * 【core   】     DynaBean.create增加重载方法(pr#245@Gitee)
 * 【core   】     DynaBean.create增加重载方法(pr#245@Gitee)
@@ -11,6 +11,7 @@
 * 【poi    】     SheetRidReader增加getRidByIndex方法(issue#1342@Github)
 * 【poi    】     SheetRidReader增加getRidByIndex方法(issue#1342@Github)
 * 【extra  】     MailAccount增加sslProtocols配置项(issue#IZN95@Gitee)
 * 【extra  】     MailAccount增加sslProtocols配置项(issue#IZN95@Gitee)
 * 【extra  】     MailUtil增加getSession方法
 * 【extra  】     MailUtil增加getSession方法
+* 【setting】     新增setByGroup和putByGroup,set和put标记为过期(issue#I2C42H@Gitee)
 
 
 ### Bug修复
 ### Bug修复
 * 【core   】     修复CsvReader读取双引号未转义问题(issur#I2BMP1@Gitee)
 * 【core   】     修复CsvReader读取双引号未转义问题(issur#I2BMP1@Gitee)

+ 31 - 0
hutool-setting/src/main/java/cn/hutool/setting/Setting.java

@@ -519,12 +519,26 @@ public class Setting extends AbsSetting implements Map<String, String> {
 	 * @param key   键
 	 * @param key   键
 	 * @param value 值
 	 * @param value 值
 	 * @return 此key之前存在的值,如果没有返回null
 	 * @return 此key之前存在的值,如果没有返回null
+	 * @deprecated 此方法与getXXX参数顺序不一致容易造成问题,建议使用{@link #putByGroup(String, String, String)}
 	 */
 	 */
+	@Deprecated
 	public String put(String group, String key, String value) {
 	public String put(String group, String key, String value) {
 		return this.groupedMap.put(group, key, value);
 		return this.groupedMap.put(group, key, value);
 	}
 	}
 
 
 	/**
 	/**
+	 * 将键值对加入到对应分组中
+	 *
+	 * @param key   键
+	 * @param group 分组
+	 * @param value 值
+	 * @return 此key之前存在的值,如果没有返回null
+	 */
+	public String putByGroup(String key, String group, String value) {
+		return this.groupedMap.put(group, key, value);
+	}
+
+	/**
 	 * 从指定分组中删除指定值
 	 * 从指定分组中删除指定值
 	 *
 	 *
 	 * @param group 分组
 	 * @param group 分组
@@ -622,12 +636,29 @@ public class Setting extends AbsSetting implements Map<String, String> {
 	 * @param key   键
 	 * @param key   键
 	 * @param value 值
 	 * @param value 值
 	 * @return 此key之前存在的值,如果没有返回null
 	 * @return 此key之前存在的值,如果没有返回null
+	 * @deprecated 此方法与getXXX参数顺序不一致容易引起,请使用{@link #setByGroup(String, String, String)}
 	 */
 	 */
+	@Deprecated
 	public Setting set(String group, String key, String value) {
 	public Setting set(String group, String key, String value) {
 		this.put(group, key, value);
 		this.put(group, key, value);
 		return this;
 		return this;
 	}
 	}
 
 
+	/**
+	 * 将键值对加入到对应分组中<br>
+	 * 此方法用于与getXXX统一参数顺序
+	 *
+	 * @param key   键
+	 * @param group 分组
+	 * @param value 值
+	 * @return 此key之前存在的值,如果没有返回null
+	 * @since 5.5.7
+	 */
+	public Setting setByGroup(String key, String group, String value) {
+		this.putByGroup(key, group, value);
+		return this;
+	}
+
 	// ------------------------------------------------- Override Map interface
 	// ------------------------------------------------- Override Map interface
 	@Override
 	@Override
 	public boolean isEmpty() {
 	public boolean isEmpty() {