有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java SAXParser解析复杂对象

我是萨克斯管的新手。我不知道是否可以用SAXParser解析复杂的对象。我有一个包含项目列表的类。我的响应xml是这样的:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><GetPaymentServiceInfoResponse xmlns="http://quetzalcoatlus/EpulPaymentService"><GetPaymentServiceInfoResult><ResultCodes>OK</ResultCodes><Description>User is temporary blocked</Description><Items><Item><Amount>122</Amount></Item><Item><Amount>23232</Amount></Item></Items></GetPaymentServiceInfoResult></GetPaymentServiceInfoResponse></s:Body></s:Envelope>

我的POJO课程如下:

@XmlRootElement(name = "PGResponse")
 public class CheckAbonSuccessResponseModel {

private String message;
private String message_code;
private BigDecimal amount;
private String invoiceCode;
private String operationCode;
private List<Item> items;

@XmlElement(name = "message")
public String getMessage() {
    return message;
}

public void setMessage(String message) {
    this.message = message;
}

@XmlElement(name = "message_code")
public String getMessage_code() {
    return message_code;
}

public void setMessage_code(String message_code) {
    this.message_code = message_code;
}

@XmlElement(name = "amount")
public BigDecimal getAmount() {
    return amount;
}

public void setAmount(BigDecimal amount) {
    this.amount = amount;
}

@XmlElement(name = "invoice_code")
public String getInvoiceCode() {
    return invoiceCode;
}

public void setInvoiceCode(String invoiceCode) {
    this.invoiceCode = invoiceCode;
}

@XmlElement(name = "operation_code")
public String getOperationCode() {
    return operationCode;
}

public void setOperationCode(String operationCode) {
    this.operationCode = operationCode;
}

@XmlElement(name = "items")
public List<Item> getItems() {
    return items;
}

public void setItems(List<Item> items) {
    this.items = items;
}

@XmlRootElement(name = "item")
public static class Item {
    private String label;
    private String value;

    @XmlElement(name = "label")
    public String getLabel() {
        return label;
    }

    public void setLabel(String label) {
        this.label = label;
    }

    @XmlElement(name = "value")
    public String getValue() {
        return value;
    }

    public void setValue(String value) {
        this.value = value;
    }
 }
  }

如何将xml字符串解析为CheckAbonAccessResponseModel。有没有可能?我试过了,但它只显示了Result元素中的数量我只需要知道如何编写DefaultHandler类 提前谢谢


共 (0) 个答案