首页 > 其他分享 >springboot使用requestmapping创建xml响应体接口

springboot使用requestmapping创建xml响应体接口

时间:2023-11-12 18:22:06浏览次数:30  
标签:xml return String item ResponseItem requestmapping public springboot

entity下创建类文件,类名分别为:ResponseXml,ResponseItem
controller下创建xml响应体实现方法 getResponseWithXml

---------ResponseXml Start-------
import javax.xml.bind.annotation.*;

//根标签
@XmlRootElement(name="test1")
public class ResponseXml{
private String um;
private String dept;
private int id;
private ResponseItem item;

@XmlAttribute
public int getId(){
return id;
}
public void setId(int id){
this.id = id;
}

public String getUm(){
return um;
}
public void setUm(String um){
this.um = um;
}

public String getDept(){
return dept;
}
public void setDept(String dept){
this.dept = dept;
}

public ResponseItem getItem(){
return item;
}
public void setItem(ResponseItem item){
this.item = item;
}
}
---------ResponseXml end-------

---------ResponseItem Start-------
//根标签包含的子标签
import javax.xml.bind.annotation.*;
public class ResponseItem{
private String appname;
private String appcode;

public String getAppname(){
return appname;
}
public void setAppname(String appname){
this.appname = appname;
}
public String getAppcode(){
return appcode;
}
public void setAppcode(String appcode){
this.appcode = appcode;
}
....
....
//依次类推
}

---------ResponseItem end------

---------getResponseWithXml start-------
@ResponseBody
@RequestMapping(value="/get/response/with/xml",produces={"application/xml;charset=utf-8"})
public ResponseXml getResponseWithXml(HttpServletRequest httpRequest,HttpServletResponse httpResponse,@RequestHeader MultiValueMap<String,String> reqheaders) throws IOEception{
StringBuilder buffer = new StringBuilder();
BufferedReader reader = httpRequest.getReader();
String line;
while ((line = reader.readLine())!=null){
buffer.append(line);
}
String reqBody=buffer.toString();
JSONOjbect object = JSONObject.parseObject(reqBody);
ResponseXml resXml = new ResponseXml();
ResponseItem item = new ResponseItem();
----最里层---
item.setAppname(object.getString("appname"));
item.setAppcode(object.getString("appcode"));
----最里层---

----根目录(外层)---
resXml.setUm(object.getString("um"));
resXml.setDept(object.getString("dept"));
resXml.setId(object.getInteger("id"));
resXml.setItem(item);
return resXml;

----根目录(外层)---


}


---------getResponseWithXml end-------

标签:xml,return,String,item,ResponseItem,requestmapping,public,springboot
From: https://www.cnblogs.com/yinzone/p/17827520.html

相关文章

  • Springboot内置的工具类之ObjectUtils
    在实际业务开发中,有时候经常需要判断对象是否为空、数组是否为空、两个对象是否相等,数组中是否包含某个元素,往数组中追加元素等这些操作,每次都手写太麻烦,然后很多人的选择是封装成util工具类,实际上类似这些东西,如果项目使用了spring的框架,根本不需要封装,org.springframework.util.O......
  • JavaScript的数据交换格式XML和JSON的解析------前端
    XML和JSON数据的解析<!DOCTYPEhtml><!--这是HTML的注释--><htmllang="en"id="myHtml"> <head> <!--这里不是设置了编码,而是告诉浏览器,用什么编码方式打开文件避免乱码--> <metacharset="UTF-8"> <metaname="viewport&quo......
  • SpringBoot3.x使用Swagger
    SpringBoot3.x使用Swagger当前开发主流是前后端分离,有完整文档可以使团队配合更加流畅Spring生态中通常使用springfox,但是当前springfox并不支持SpringBoot3.x版本使用替代产品:Springdoc.orgSpringdoc在v1.7.0版本之后不支持SpringBoot2.x和1.x!!!项目启动后,Swagger默认地址......
  • SpringBoot创建非web项目
    从开始使用SpringBoot到现在,一直都是在用SpringBoot开发web服务(API服务),其实SpringBoot也支持非web项目。Spring诞生之初就不是为web项目定制的,SpringBoot无非是在spring核心项目的基础上添加了一些方便开发者使用的组件,所以使用SpringBoot开发非web项目也是可行的。依赖创建web......
  • SpringBoot @Async:魔法和陷阱
    来源:https://medium.com/@Async注解就像是springboot项目中性能优化的秘密武器。是的,我们也可以手动创建自己的执行器和线程池,但@Async使事情变得更简单、更神奇。@Async注释允许我们在后台运行代码,因此我们的主线程可以继续运行,而无需等待较慢的任务完成。但是,就像所有秘密武器一......
  • 基于SpringBoot的来访管理系统的设计与实现-计算机毕业设计源码+LW文档
    摘 要本文首先实现了来访管理技术的发展,随后依照传统的软件开发流程,最先为系统挑选适用的言语和软件开发平台,依据需求分析开展控制模块制作和数据库查询构造设计,依据系统整体功能模块的设计,制作系统的功能模块图、流程表和E-R图。其次进行设计框架,依据设计的框架撰写编码,完成系......
  • 基于springboot的旅游出行指南-计算机毕业设计源码+LW文档
    摘 要随着社会的发展,旅游出行的管理形势越来越严峻。越来越多的用户利用互联网获得信息,但旅游出行信息鱼龙混杂,信息真假难以辨别。为了方便用户更好的获得本旅游出行信息,因此,设计一种安全高效的旅游出行指南极为重要。为设计一个安全便捷,并且使用户更好获取本旅游出行信息,本文......
  • springboot学习日记(二)
    运行springboot项目报错o.s.b.d.LoggingFailureAnalysisReporter,查资料试着查一下端口占用8080。netstat-aon|findstr8080发现8080端口被进程8768占用。 查找8768进程的程序tasklist|findstr8768发现是腾讯会议。。。 退出了再试试,还是没解决问题。。很好,排除一......
  • SpringBoot整合Ajax
    使用springboot整合ajax实现登录验证及查询信息。添加jar依赖<dependencies><!--<dependency>--><!--<groupId>org.aspectj</groupId>--><!--<artifactId>aspectjweaver</artifactId>-->......
  • SpringBoot项目集成ElasticSearch服务
    目录版本介绍背景介绍优势说明集成过程1.引入依赖2.添加配置文件3.初始化示例说明代码结果总结提升版本介绍  Springboot的版本是:2.3.12  ElasticSearch的版本是:7.6.2背景介绍  在我们的项目中经常会遇到对于字符串的一些操作,例如对于字符串的分词,通过一个词去查找对应......