java - 如何通过请求体获取xml并解析到Spring boot

标签 java xml spring postman

我正在尝试通过 postman 将 xml 提取到 spring boot rest api 中。但是从中获取数据时遇到问题。如何将其解析为 spring boot 应用程序并获取属性值。否则,如何通过创建 pojo 类来获取 xml 数据。

xml文件如下:

<Transmission>
    <TransmissionHeader/>
    <TransmissionBody>
        <GLogXMLElement>
            <TransmissionReport>
                <Name>FUEL</Name>
                <Number>57</Number>
                <Status>PROCESSED</Status>
                <TransmissionSummary>
                    <FirstTransactionNo>1017</FirstTransactionNo>
                    <LastTransactionNo>1017</LastTransactionNo>
                </TransmissionSummary>
            </TransmissionReport>
        </GLogXMLElement>
    </TransmissionBody>
</Transmission>

提前致谢。

最佳答案

在Spring boot中,获取请求体——

@RequestMapping(method = RequestMethod.POST)
void testEndPoint(@PathVariable String param, @RequestBody String xml) {
//do stuff
}

详情见下文-

Spring Boot Guide

@RequestBody

为了将其转换为 POJO,您可以探索使用 Xstream - XStream Tutorial

定义您的 POJO,您可以简单地做 -

POJO pojo = (POJO)xstream.fromXML(xml);

关于java - 如何通过请求体获取xml并解析到Spring boot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45241192/

相关文章:

Java:如何将 com.google.api.services.drive.model.File 转换为 InputStream?

java - 使用 Apache HttpClient 的 Facade 是否可以同时获取状态码和正文内容?

java - 使用 MockMvc 测试 @preAuthorize(custom_implementation)

java - 最终类上的 PowerMock UnfinishedStubbingException 错误

android - 为什么view中layout_weight的效果和TextView的表现不一样?

java - 当 namespace 前缀更改时,如何验证 XML 签名?

ruby - 打印顶部没有 XML 标题行的 XML 文档

java - ArrayList 获取数组索引

java - Spring JDBCTemplate 除了 apache commons 之外还有其他 MySQL 数据源吗?

java - 使用带有可为空外键的 QueryDSL 在 Spring Data JPA Repository 中进行过滤