stb*_*rod 6 java json jaxb moxy
我正在尝试将JAXB注释放在POJO上以生成以下JSON(通过moxy):
{
"apartmentNumber": "404",
"city/town": "SomeCity",
"state/province": "NoState",
"street": "1st Street"
}
Run Code Online (Sandbox Code Playgroud)
某些字段包含斜杠.当我试图把注释@XmlElement(name ="city/town")
@XMLRootElement
public class SubscriberAddress {
private String street;
private String apartmentNumber;
@XMLElement(name="city/town")
private String city;
@XMLElement(name="state/province")
private String state;
}
Run Code Online (Sandbox Code Playgroud)
moxy将这些名称视为XPath并创建以下JSON
{
"apartmentNumber" : "404",
"city" : {
"town" : "SomeCity"
},
"state" : {
"province" : "NoState"
},
"street" : "1st Street"
}
Run Code Online (Sandbox Code Playgroud)
有没有办法逃避斜线/禁止moxy处理元素名称中的斜杠?
U 可以尝试 GSON,而不是 moxy,因为它正在产生结果。
POJO 是:
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement
public class SubscriberAddress {
private String street;
private String apartmentNumber;
@XmlElement(name = "city/town")
private String city;
@XmlElement(name = "state/province")
private String state;
public String getStreet() {
return street;
}
public void setStreet(String street) {
this.street = street;
}
public String getApartmentNumber() {
return apartmentNumber;
}
public void setApartmentNumber(String apartmentNumber) {
this.apartmentNumber = apartmentNumber;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
}
Run Code Online (Sandbox Code Playgroud)
生成的 JSON 是:
{
"SubscriberAddress": {
"street": "Demo Street",
"apartmentNumber": "Demo Apartment",
"city/town": "Demo City",
"state/province": "Demo State"
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
331 次 |
| 最近记录: |