【发布时间】:2023-01-12 19:07:23
【问题描述】:
我有这个 Java 对象,我想将它转换成由 & 符号连接的键值字符串。
private String name;
private int age;
private String address;
private String city;
转换成这个键值字符串。
name=John&age=30&address=12st NW Street&city=New York
我试过 Jackson,但我不想要 JSON 字符串。 我试过 URIEncoder 但我不需要对它进行编码。 尝试使用反射循环每个属性,但我想有更好的方法。
我考虑过 toString,但我想要更灵活的东西。因为属性名称可能会更改。
【问题讨论】:
-
您可以通过覆盖 toString() 函数来实现这一点。
-
您可以使用 Jackson 将 pojo 转换为普通地图,然后基本上只是将条目连接成一个字符串。当然,这不适用于更复杂的对象和更深层次的嵌套——因此您可能需要重新考虑该方法。
-
"name=" + name + "&age=" + age + "&address=" + address + "&city=" + city -
我已经更新了问题。不想使用 toString 因为属性名称可能会更改,而且我不想在 2 个不同的地方进行更新。
-
“我需要对其进行编码”到底是什么意思?
标签: java