@Slf4j
public class RestTmpBaseServiceImpl {
@Autowired
public RestTemplate restTemplate;
public HttpHeaders buildHeader(){
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
headers.set("Authorization","Bearer "+"token");
return headers;
}
public HttpEntity<Map<String,Object>> buildHttpRequest(Map<String, Object> body){
HttpEntity<Map<String,Object>> request = new HttpEntity<>(body, buildHeader());
return request;
}
public ResponseEntity<Map> buildPostForMapEntity(String url,Map<String,Object> body){
try{
HttpEntity<Map<String,Object>> request = buildHttpRequest(body);
log.info("请求地址:"+url);
log.info(("请求参数:"+ JSONObject.toJSONString(body)));
ResponseEntity<Map> response = restTemplate.postForEntity(url, request, Map.class);
log.info(("请求返回值:"+ JSONObject.toJSONString(response.getBody())));
return response;
}catch (Exception e){
e.printStackTrace();
log.error(("请求异常"+e.getMessage()));
return null;
}
}
public ResponseEntity<String> buildPostForString(String url,Map<String,Object> body){
return buildPostForStringByUrl(url,body);
}
public ResponseEntity<String> buildPostForStringByUrl(String url,Map<String,Object> body){
try{
HttpEntity<Map<String,Object>> request = buildHttpRequest(body);
String reqUrl = url;
log.info("请求地址:"+reqUrl);
log.info(("请求参数:"+ JSONObject.toJSONString(body)));
ResponseEntity<String> response = restTemplate.postForEntity(reqUrl, request, String.class);
log.info("请求返回值:"+ response.getBody());
return response;
}catch (Exception e){
e.printStackTrace();
log.error(("请求异常"+e.getMessage()));
return null;
}
}
public Map buildPostForMap(String url,Map<String,Object> body){
ResponseEntity<Map> response = buildPostForMapEntity(url,body);
return response.getBody();
}
public JSONObject buildPostForJsonObject(String url,Map<String,Object> body){
log.info("请求地址:"+url);
log.info("请求参数:"+JSONObject.toJSONString(body));
ResponseEntity<String> response = buildPostForString(url,body);
return JSONObject.parseObject(response.getBody());
}
public JSONObject buildPostForJsonObjectByUrl(String url,Map<String,Object> body){
log.info("请求地址:"+url);
log.info("请求参数:"+JSONObject.toJSONString(body));
ResponseEntity<String> response = buildPostForStringByUrl(url,body);
return JSONObject.parseObject(response.getBody());
}
public ResponseEntity<Map> buildGetBodyForMap(String url,Map<String,Object> params){
try{
HttpHeaders headers = buildHeader();
HttpEntity<String> entity = new HttpEntity<>(JSONObject.toJSONString(params),headers);
ResponseEntity<Map> response = restTemplate.exchange(url, HttpMethod.GET, entity, Map.class);
log.info(("请求返回值:"+ JSONObject.toJSONString(response)));
return response;
}catch (Exception e){
e.printStackTrace();
log.error(("请求异常"+e.getMessage()));
return null;
}
}
public ResponseEntity<Map> buildGetForMap(String url,Map<String,Object> params){
try{
HttpHeaders headers = buildHeader();
UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(url);
for (Map.Entry<String, Object> entry : params.entrySet()) {
builder.queryParam(entry.getKey(), entry.getValue());
}
String reqUrl = builder.toUriString();
log.info("请求地址:"+reqUrl);
HttpEntity<String> entity = new HttpEntity<>(headers);
ResponseEntity<Map> response = restTemplate.exchange(reqUrl, HttpMethod.GET, entity, Map.class);
log.info(("请求返回值:"+ JSONObject.toJSONString(response)));
return response;
}catch (Exception e){
e.printStackTrace();
log.error(("请求异常"+e.getMessage()));
return null;
}
}
public ResponseEntity<Map> buildGetForMap(String url){
try{
log.info("请求地址:"+url);
HttpHeaders headers = buildHeader();
HttpEntity<String> entity = new HttpEntity<>(headers);
ResponseEntity<Map> response = restTemplate.exchange(url, HttpMethod.GET, entity, Map.class);
log.info(("请求返回值:"+ JSONObject.toJSONString(response)));
return response;
}catch (Exception e){
e.printStackTrace();
log.error(("请求异常"+e.getMessage()));
return null;
}
}
public ResponseEntity<Map> buildPutForMap(String url){
try{
log.info("请求地址:"+url);
HttpHeaders headers = buildHeader();
HttpEntity<String> entity = new HttpEntity<>(headers);
ResponseEntity<Map> response = restTemplate.exchange(url, HttpMethod.PUT, entity, Map.class);
log.info(("请求返回值:"+ JSONObject.toJSONString(response)));
return response;
}catch (Exception e){
e.printStackTrace();
log.error(("请求异常"+e.getMessage()));
return null;
}
}
public ResponseEntity<Map> buildPutForMapEntity(String url,Map<String,Object> body){
try{
HttpEntity<Map<String,Object>> request = buildHttpRequest(body);
log.info("请求地址:"+url);
log.info(("请求参数:"+ JSONObject.toJSONString(body)));
ResponseEntity<Map> response = restTemplate.postForEntity(url, request, Map.class);
log.info(("请求返回值:"+ JSONObject.toJSONString(response.getBody())));
return response;
}catch (Exception e){
e.printStackTrace();
log.error(("请求异常"+e.getMessage()));
return null;
}
}
}
相关推荐
elasticsearch 基础 —— Java High Level REST相关操作封装
pox.xml文件添加以下内容 <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-high-level-client</artifactId> <version>6.3.2...
RestTemplate调用第三方接口封装工具类
RestTemplate封装工具类
Java通用restful返回工具类
通用restful返回工具类
Java RestTemplate中几种常见的请求方式
在REST接口的设计中,利用RestTemplate进行接口测试是种常见的方法。本文主要从以下四个方面来看RestTemplate的使用: GET请求 POST请求 PUT请求 DELETE请求 OK,开始吧。 1. 用exchange方法提交 exchange既可以执行POST方法,还可以执行GET,设置header,所以应用最为广泛。 String url = "http://localhost/mirana-ee/app/login"; RestTemplate client = ne
Camera 基础知识
Raw Sensor输出的Data格式为Raw,图像的效果处理使用BB端的ISP,BB端接收Raw data后进行一系列的图像处理(OB,Shading,AWB,Gamma,EE,ANR等),效果方面由BB端控制,需要针对不同的模组进行效果调试,Raw sensor是目前的主流,数据量比YUV Sensor小(RAW10 格式的sensor 1个pixel 10个bit)使用平台ISP处理,能支持较大的size。不过,相位对焦并不是那么完美,它对光线的要求就比较高,在弱光拍摄环境下,相位对焦就无能威力了。
point transformer v3结构
分割结构: embedding->enc->dec embedding->enc0->enc1->enc2->enc3->enc4->dec3->dec2->dec1->dec0 embedding ->block0->block1 ->dow->block0->block1 ->dow->block0->block1 ->dow->block0->block1->
Java调用REST接口(get,post请求方法)
网上的调用方法实例千奇百怪,以下为本人自己整理的Java调用rest接口方法实例,包含get请求和post请求,可创建工具类方便调用,其中post请求解决了入出参中文乱码问题。 get方式请求 //get方式请求 public String restCallerGet(String path, String param) { //path 接口路径 xxx/xxx/xxx //param 入参 ?xxx=x&xxx=x&xxx=x //接口ip String http
ArcMap 10.7/10.8启动加载界面后闪退?可能是这个隐藏的Normal.mxt模板文件在搞鬼
本文深入分析了ArcMap 10.7/10.8启动加载界面后闪退的问题,指出Normal.mxt模板文件损坏是常见原因。提供了从定位、删除模板文件到系统级修复的完整解决方案,帮助GIS工程师快速恢复工作流程。
JAVA WEB开发中REST接口统一返回数据工具类封装
在JAVA WEB项目开发过程中,统一的API数据返回很常见,这里总结一下Rest接口里统一的API数据返回格式和Rpc接口里统一的API数据返回格式。
快速了解GPU分布通信技术:PCIe、NVLink与NVSwitch
PCIe(Peripheral Component Interconnect Express)是一种高速串行计算机扩展总线标准,广泛用于连接计算机的各种硬件设备。PCIe4.0是目前较为先进的版本,提供了高达64GB/s的带宽。InfiniBand是一种用于高性能计算的高速互连技术,通过交换机在节点之间直接创建一个专用的受保护通道。InfiniBand适配器通过PCIe接口连接到CPU,另一端通过InfiniBand网络端口连接到InfiniBand子网。
【深大计算机网络】实验三 可靠传输机制 实验报告 附代码
【内附代码】【深大计算机网络】实验三 可靠传输机制 实验报告 附代码
java调用GET\POST发送GET/POST请求的工具类
写在前面 很多时候我们需要去调用或者发送请求访问java的rest接口,这时候一般我们项目组会添加相对应的工具类进行封装,不用每次都去重新写一次,类似于java的jdbc,我们如果使用mabits时候,框架已经为我们封装好相关的代码,这也是java面向对象的编程思想的体现,这里就没太多的文字概述啦~~ 直接上代码,有需要的小伙伴可以直接复制到自己的工具类中使用哦 改工具类名称:RestUtil.j...
反激电源反馈环路设计:从TL431+PC817原理到动态补偿实战
本文深入解析了反激电源中由TL431和PC817构成的经典反馈环路设计。从静态工作点计算到动态补偿实战,详细阐述了如何通过Type II补偿网络优化环路稳定性与动态响应,并分享了应对光耦CTR离散性、布局噪声等常见调试难题的实用技巧,帮助工程师设计出高性能、高可靠的开关电源。
【Java基础语法】多个对象合并成一个对象返回案例(57)
1.多个对象合并成一个对象返回
YOLOv11改进策略【注意力机制篇】| SE、CBAM、ECA、CA、Swin Transformer等注意力机制全面解析与应用
本文详细介绍了五种主流的注意力机制及其在YOLOv11中的应用。通过合理的模块选择和位置部署,注意力机制能够显著提升目标检测性能。
Unreal 从入门到精通之VR常用操作
本文总结了使用Unreal5开发VR项目时遇到的常见问题及其解决方案。首先,介绍了如何通过VRPawn的TryTeleport函数设置玩家视角位置,确保头显移动时安全区域的正确传送。其次,详细说明了如何在Unreal中播放视频,包括导入视频文件、创建媒体播放器和媒体纹理,并将其应用到3D物体上。接着,讲解了如何播放VR全景视频,建议使用MediaPlate媒体板并调整几何体为球体。最后,讨论了如何手动打开和关闭VR模式,以便在PC模式和头显模式之间切换。这些方法为VR开发提供了实用的技术指导。
REST接口封装统一返回数据工具类
/** * REST接口封装统一返回数据工具类 */ public class Result { /** * 响应状态码 */ private Integer code; /** * 响应成功与否 */ private boolean success; /** * 响应消息 */ private String msg; /** * 响应数据 */ pr...
霍尼韦尔SoftMaster使用说明
霍尼韦尔SoftMaster使用说明
Utils-HttpsClientUtil
一、http封装工具类 忽略证书https请求 支持rest风格请求与传参 支持header请求头封装 支持Query与HttpEntity传参 maven依赖 <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpmime</artifactId> <version>4.5.9</ver
复分析 阿尔福斯(Ahlfors) 第三版答案 英文
答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案
Statistics and Machine Learning Toolbox
Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具
SpringBoot-ElasticSearch8
前沿 elasticsearch-rest-high-level-client在 7.15.0 中已弃用。 不推荐使用高级 REST 客户端,取而代之的是 Java API 客户端 。 spring-boot-starter-data-elasticsearch 也不推荐,虽然基础操作简化了很多,但是一旦使用了es高级特性,那么就如同进入了地狱 在es官网推荐我们现在使用 Elasticsearch Java API 客户端 Java API 客户端官网地址 elasticsearch Api 操作大全
lwip-2.0.3
lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。
SpringBoot实战:MinIO API配置与工具类优雅封装
本文通过"依赖引入→配置优化→工具类封装→使用示例"的完整流程,实现了SpringBoot项目中MinIO API的优雅封装。核心思路是通过配置解耦与分层设计,降低代码耦合度,提升可维护性;同时注重敏感信息安全与资源管理,确保工具类在开发与生产环境中都能稳定运行。通过合理的扩展,该工具类可轻松适配不同场景的需求,为项目开发提供高效支持。
高可用的java SpringBoot REST 风格API接口结果封装
文章目录1 摘要核心代码2.1 Swagger Maven 依赖2.2 接口返回结果封装2.3 使用说明2.4 Github 源码 1 摘要 REST 风格已经成为 WEB 开发的主流趋势,本文将分享作者自己在项目中使用的java后台 REST API 接口封装类。 核心代码 2.1 Swagger Maven 依赖 Swagger 作为可视化接口测试工具,根据代码自动生成接口文档,方便用户测试,...
springboot接入deepseek深度求索 java
以下是在springboot中接入aideepseek的过程。官网并没有java的示例。
在java中接入百度地图
3,编写配置类BaiduMapProperties,接受配置文件的配置。4,编写写百度地图工具类,BaiduMapUtil.java。2,在配置文件application.yml里面配置。6,暴露MapController 接口给前端。5,编写业务类 MapServiceImpl。1,登录百度地图开放平台,获取ak。
Flyingsaucer与现代Java框架集成:Spring Boot中的PDF报表生成方案
在现代企业级应用开发中,PDF报表生成是一项常见需求。作为纯Java实现的XML/XHTML和CSS 2.1渲染器,Flyingsaucer为开发者提供了强大而灵活的PDF生成能力。本文将详细介绍如何将Flyingsaucer与Spring Boot框架无缝集成,打造高效、美观的PDF报表解决方案。 ## 为什么选择Flyingsaucer? Flyingsaucer(项目路径:gh_mirr
BEYOND REALITY Z-Image开发实战:使用IntelliJ IDEA进行Java集成
本文介绍了如何在星图GPU平台上自动化部署🌌 BEYOND REALITY Z-Image镜像,实现高效的人像生成应用。通过IntelliJ IDEA进行Java集成,开发者可以快速调用API生成高质量人像图片,适用于电商产品图、社交媒体内容等视觉创作场景,显著提升开发效率。
java封装一个通用的REST API 返回结果
REST API 返回结果 import com.fasterxml.jackson.annotation.JsonFormat; import com.zwcl.common.models.enums.ExceptionCode; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.experimental.Accessors; import org.apache.commo
5564



被折叠的 条评论
为什么被折叠?



