在Java Spring控制器中获取XML,可以通过以下步骤实现:
以下是一个示例代码:
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;
import java.io.StringReader;
@RestController
public class XMLController {
@PostMapping("/xml")
public String handleXML(@RequestBody String xmlData) {
try {
JAXBContext jaxbContext = JAXBContext.newInstance(YourXMLClass.class);
Unmarshaller unmarshaller = jaxbContext.createUnmarshaller();
YourXMLClass xmlObject = (YourXMLClass) unmarshaller.unmarshal(new StringReader(xmlData));
// 在这里可以对解析后的XML对象进行处理
return "XML解析成功";
} catch (JAXBException e) {
e.printStackTrace();
return "XML解析失败";
}
}
}
在上面的示例代码中,YourXMLClass
是你创建的用于表示XML结构的Java类。handleXML
方法使用@PostMapping
注解来处理POST请求,并使用@RequestBody
注解来接收XML数据。然后,通过JAXBContext和Unmarshaller来解析XML,并将其转换为Java对象。
请注意,这只是一个简单的示例,实际应用中可能需要根据具体的XML结构和业务逻辑进行适当的修改和处理。
推荐的腾讯云相关产品:腾讯云云服务器(CVM)和腾讯云对象存储(COS)。
领取专属 10元无门槛券
手把手带您无忧上云