This commit is contained in:
Looly
2023-12-30 01:00:01 +08:00
parent f628e975bc
commit 752a8ece52
8 changed files with 239 additions and 272 deletions

View File

@@ -90,7 +90,8 @@ public class BeanUtilTest {
.put("aGe", 12)
.put("openId", "DFDFSDFWERWER")
.build();
final SubPerson person = BeanUtil.fillBeanWithMapIgnoreCase(map, new SubPerson(), false);
final SubPerson person = BeanUtil.fillBeanWithMap(
map, new SubPerson(), CopyOptions.of().setIgnoreCase(true));
Assertions.assertEquals("Joe", person.getName());
Assertions.assertEquals(12, person.getAge());
Assertions.assertEquals("DFDFSDFWERWER", person.getOpenid());

View File

@@ -0,0 +1,41 @@
/*
* Copyright (c) 2023. looly(loolly@aliyun.com)
* Hutool is licensed under Mulan PSL v2.
* You can use this software according to the terms and conditions of the Mulan PSL v2.
* You may obtain a copy of Mulan PSL v2 at:
* https://license.coscl.org.cn/MulanPSL2
* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
* EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
* MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
* See the Mulan PSL v2 for more details.
*/
package org.dromara.hutool.core.bean;
import lombok.Data;
import org.dromara.hutool.core.bean.copier.CopyOptions;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
import java.util.HashMap;
import java.util.Map;
public class Issue3452Test {
@Test
void fillBeanWithMapTest() {
final Map<String, Object> properties = new HashMap<>();
properties.put("name", "JohnDoe");
properties.put("user_age", 25);
final User user = BeanUtil.fillBeanWithMap(
properties, new User(), CopyOptions.of());
Assertions.assertEquals("JohnDoe", user.getName());
Assertions.assertEquals(25, user.getUserAge());
}
@Data
static class User {
private String name;
private int userAge;
}
}

View File

@@ -14,6 +14,7 @@ package org.dromara.hutool.core.xml;
import lombok.Data;
import org.dromara.hutool.core.bean.BeanUtil;
import org.dromara.hutool.core.bean.copier.CopyOptions;
import org.dromara.hutool.core.collection.ListUtil;
import org.dromara.hutool.core.collection.set.SetUtil;
import org.dromara.hutool.core.io.file.FileUtil;
@@ -282,7 +283,7 @@ public class XmlUtilTest {
// 标准方式
final Map<String, Object> map = XmlUtil.xmlToMap(doc.getFirstChild());
final SmsRes res = new SmsRes();
BeanUtil.fillBeanWithMap(map, res, true);
BeanUtil.fillBeanWithMap(map, res, CopyOptions.of().setIgnoreError(true));
// toBean方式
final SmsRes res1 = XmlUtil.xmlToBean(doc.getFirstChild(), SmsRes.class);