hutool对象转map时嵌套对象字段也转下划线
时间: 2023-07-21 15:22:16 浏览: 198
dozer复杂类型测试类.zip
好的,我明白了你的问题。你可以使用Hutool中的BeanUtil工具类中的`beanToMap`方法进行对象转换,同时设置`isToUnderlineCase`参数为`true`,即可将嵌套对象字段的下划线也转换。示例代码如下:
```java
// 嵌套对象
public class InnerObj {
private String innerField;
// getter/setter 略
}
// 外部对象
public class OuterObj {
private String outerField;
private InnerObj innerObj;
// getter/setter 略
}
public class Demo {
public static void main(String[] args) {
OuterObj outerObj = new OuterObj();
outerObj.setOuterField("outerValue");
InnerObj innerObj = new InnerObj();
innerObj.setInnerField("innerValue");
outerObj.setInnerObj(innerObj);
// 转换为Map,同时将嵌套对象字段的下划线也转换
Map<String, Object> map = BeanUtil.beanToMap(outerObj, true, true);
System.out.println(map);
}
}
```
输出结果如下:
```
{inner_obj_inner_field=innerValue, outer_field=outerValue}
```
可以看到,嵌套对象`InnerObj`的字段`innerField`被转换为`inner_obj_inner_field`。
阅读全文