SpringBoot---RestTemplate远程调用python rest接口

网络调试和分析工具 Proxyman Premium 它支持MacOS、iOS和iPadOS等操作系统,提供丰富的功能,如查看和编辑HTTP/HTTPS请求和响应、设置断点、过滤请求等。Proxyman Premium还支持WebSocket、GraphQL和gRPC等现代网络协议调试,并通过直观且图形化的操作界面,使用户能高效地监控和操纵网络数据流。此外,它还具备多种高级功能,如WebSocket支持、DNS欺骗、自定义SSL证书等,为开发人员提供极大的便利。同时,由于软件版本更新和界面调整,上述步骤可能会有所变化,建议您参考最新版本的官方文档进行操作。 阅读详情

最近公司项目使用了Python作CMS系统,但是数据分析和一些基础数据提供等需要用到Java来做,所以就是一个后台项目分成Java和Python来做,有一些数据就需要从Python端查出来再提供给Java使用,Python使用的是django,Java是Springboot,Python调Java可以使用Telnet调用Java的dubbo接口(会另写一篇),Java调用Python就是用Spring提供的RestTemplate

 

首先配置RestTemplate

package com.hqjl.career.config;

import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.context.annotation.Bean;
import org.springframework.http.client.ClientHttpRequestFactory;
import org.springframework.http.client.SimpleClientHttpRequestFactory;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.http.converter.StringHttpMessageConverter;
import org.springframework.stereotype.Component;
import org.springframework.web.client.RestOperations;
import org.springframework.web.client.RestTemplate;

import java.nio.charset.Charset;
import java.util.Iterator;
import java.util.List;

/**
 * @author chunying
 */
@Component
public class RestTemplateConfig {

    @Bean
    @ConditionalOnMissingBean({RestOperations.class , RestTemplate.class})
    public RestTemplate restTemplate(ClientHttpRequestFactory factory) {
        RestTemplate restTemplate = new RestTemplate(factory);

        List<HttpMessageConverter<?>> messageConverters = restTemplate.getMessageConverters();
        Iterator<HttpMessageConverter<?>> iterator = messageConverters.iterator();
        while (iterator.hasNext()) {
            HttpMessageConverter<?> converter = iterator.next();
            if(converter instanceof StringHttpMessageConverter) {
                iterator.remove();
            }
        }

        messageConverters.add(new StringHttpMessageConverter(Charset.forName("UTF-8")));
        return restTemplate;
    }

    @Bean
    @ConditionalOnMissingBean({ClientHttpRequestFactory.class})
    public ClientHttpRequestFactory simpleClientHttpRequestFactory() {
        SimpleClientHttpRequestFactory factory = new SimpleClientHttpRequestFactory();
        factory.setReadTimeout(15000);
        factory.setConnectTimeout(12000);
        return factory;
    }

}
这基本是死的  不多说了 主要说下使用

我们这里是远程调用rest,post方法需要带参数

首先设置请求头

HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.setContentType(MediaType.APPLICATION_JSON);

参数

JSONObject param = new JSONObject();
param.put("gradeID",gradeID);
param.put("schoolID" , schoolID);
param.put("type" , 1);

定义URL,这里我有部分URL是在配置文件中的,不同环境ip,port可能会变动

@Value("${pythonserv}")
private String pyURL;
String URL = pyURL + "/intention/commonList";

请求以及响应接收

HttpEntity<String> entity = new HttpEntity<>(param.toString() , httpHeaders);
HttpEntity<String> response = restTemplate.exchange(URL, HttpMethod.POST , entity , String.class);

简单说一下Python端,因为有几个坑,首先Python端接收到参数解析完类型是unicode,我们取参数肯定想用的是字典类型嘛,

所以我简单写一下,有兴趣的童鞋可以试一下每一步打印type()

def commonList(request):
    dict = json.loads(request.body.decode())   unicode
    dict = dict.encode('utf-8')                str
    dict = json.loads(dict)                    dict
目标检测: yolo26在RK3588上部署 YOLO26发布:端到端目标检测新突破 摘要:Ultralytics最新发布的YOLO26算法采用原生端到端设计,无需NMS后处理,显著提升推理效率。该模型基于三大核心原则: 简洁性:消除NMS步骤,实现直接预测 部署效率:简化集成流程,降低延迟 训练创新:引入MuSGD混合优化器,加速收敛 部署教程显示,YOLO26可适配RK3588等边缘设备,通过ONNX转换和RKNN工具链实现高效部署。其创新架构特别优化了分割、姿态估计等专业任务,标志着目标检测技术的重要革新。 (字数:149) 阅读详情

相关推荐

三角洲自动购买工具 —— 基于 OCR 的价格识别与自动点击

通过的方式,我们可以轻松实现自动化的“价格监控 + 自动点击”工具。它的优势在于通用性—— 只要能截屏识别价格,就能用于任何程序,不依赖特定 API。未来可以扩展的功能:自动保存配置到文件。支持多价格区域检测。增加快捷键启停功能。

qq_62975494的博客 2417

RestTemplate远程调用

RestTemplate

weixin_73849581的博客 516

保姆级教程:在树莓派4B上用V4L2驱动USB摄像头(附完整代码)

本文提供树莓派4B上使用V4L2驱动USB摄像头的完整教程,涵盖环境配置、V4L2架构解析、代码实现及问题排查。通过详细步骤和完整代码示例,帮助开发者快速掌握嵌入式Linux下的摄像头驱动开发,解决实际应用中的兼容性和性能问题。

weixin_30312563的博客 381

Spring Boot调用Python脚本的方法

本测试在Windows开发机进行。 1、准备工作 在D盘创建一个python脚本,脚本路径为D:\python\hello.py,脚本内容为 print("Hello World!!") 在代码中定义python脚本 private static final String PATH = "D:\\python\\hello.py"; 2、Spring Boot调用Python脚本的方法 方法一、代码如下 @Test public void testMethod1() ...

QUDIHUAI的专栏 5688

3DSlicer冠脉分割实战:从DICOM导入到三维重建的完整流程(附常见问题解决)

本文详细介绍了使用3DSlicer进行冠脉分割的完整流程,从DICOM数据导入到三维重建,涵盖环境配置、视图优化、心脏区域分割及冠脉精细分割等关键步骤。针对常见问题提供实用解决方案,帮助医学影像从业者高效完成心血管结构分析,提升诊断准确性。

weixin_29271053的博客 627

从零构建物联网监控系统:STM32+迪文屏+WiFi模组的实战解析

本文详细解析了基于STM32微控制器、迪文串口屏和WiFi模组构建物联网监控系统的完整方案。从硬件选型、系统架构设计到数据交互实现,提供了包括迪文屏GUI开发、STM32通信协议、低功耗优化等实战经验,帮助开发者快速掌握物联网监控系统的核心技术。

docker7nomad的博客 727

SpringBoot 调用python接口

SpringBoot调用Python脚本 一、前言 二、方法 1、代码 2、运行 一、前言 SpringBoot作为后端开发框架,有强大且方便的处理能力。但是作为一个结合数据分析+前台展示的网站来说,后端的数据处理模块使用python脚本要更加方便。 本文主要介绍如何利用Springboot框架调用python脚本 二、方法 其实一句话来说就是利用springboot(Java)中的命令行进行调用,直接上代码。 1、代码 python文件可以放在任意位置,但是如果后续需要进行部署的话建议放在

Ajekseg的博客 1831

36 Agent Memory:如何让智能体记住该记的东西

Agent 会调用工具,只能说明它有了行动能力。要让它跨会话、跨任务持续工作,还需要一套可治理的 Memory 系统。本文讲清上下文窗口、RAG 和 Agent Memory 的区别,以及工作记忆、情景记忆、语义记忆、程序记忆该如何分层设计。

老于的笔记的专栏 88

毕设(二)Spring Boot调用Python脚本运行

前言 整个调用过程只是一次简单尝试 使用的是Java的Runtime.getRuntime()方法 正确流程 写个python脚本 import numpy as np a = np.arange(12).reshape(3,4) print(a) 创建个springboot项目,写个Controller package com.example.demo.controller; import com.example.demo.service.FaceService; import org.

qq_44648936的博客 1万+

Sigrity System Explorer Transient Analysis模式进行瞬态仿真分析操作指导-差分信号

Sigrity System Explorer Transient Analysis模式可以用于瞬态仿真分析,通过搭建简易拓扑用于前仿真分析通道的时域性能,下面搭建一个简易的差分拓扑进行说明,以下图为例,准备好发送接收端的IBIS模型, (ibis_se.ibs,本例发送接收端都使用相同的IBIS模型),以及传输线的S参数模型(welement_se.sp)最上方的图形界面是传输线的模型,本例是一个上下都有参考平面的带状线,右侧的梯形是蚀刻角度,根据W1和W2以及铜厚来确定。

weixin_54787054的博客 440

在armv8架构中,有哪些是serror

(3)、RAS(Reliability, Availability, and Serviceability)错误:一些对于系统的可靠性、可用性和可维护性有影响的错误可能会触发 SError。(2)、ECC(Error Correction Code)错误:在访问带有错误校验的内存(如ECC内存)时,如果发现错误校验失败,可能会产生SError。2、其实呢,大多数Serror都是实现定义的,真正实现的serror就没有多少个。Serror(也称System Error),是异步异常的一种,一般是来自。

baron-周贺贺-代码改变世界ctw 1013

spring boot 项目实现调用python工程的方法

如果你的 Python 代码和 Java 代码需要频繁和紧密地交互,可能需要考虑 Jython(如果 Python 代码兼容 Python 2.x),或者实现一个 Web 服务。如果你的应用需要高并发处理能力,消息队列或 gRPC/Thrift 可能是更好的选择。Jython 是一个 Python 的 Java 实现,可以让你直接在 Java 虚拟机上运行 Python 代码。将 Python 脚本或应用封装为一个 Web 服务,然后通过 HTTP 请求进行交互。这是最直接的方法,使用 Java 的。

keyboard专栏 6580

先进封装类别分析与典型案例

当制程微缩逼近物理极限、单颗大芯片(reticle limit)面积受限于光罩尺寸,且逻辑、存储、射频、传感等功能无法用同一套工艺最经济地制造时,性能增益的来源从 "晶体管密度" 转向 "互连密度"。先进封装的本质,是在芯片外部用更短、更密、更宽的路径把多个裸 die(die)互连起来,换取更高带宽、更低延迟、更小体积和异构集成能力。行业通常按划分为 2D、2.5D、3D、扇出、SiP 五大谱系,Chiplet/UCIe 则是贯穿其上的设计方法论,玻璃基板、共封装光学(CPO)是正在成型的新分支。

0 28

spring boot 调用python_SpringBoot—RestTemplate远程调用python rest接口

最近公司项目使用了Python作CMS系统,但是数据分析和一些基础数据提供等需要用到Java来做,所以就是一个后台项目分成Java和Python来做,有一些数据就需要从Python端查出来再提供给Java使用,Python使用的是django,Java是Springboot,Python调Java可以使用Telnet调用Java的dubbo接口(会另写一篇),Java调用Python就是用Spri...

weixin_32142107的博客 1050

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

SpringBoot——RestTemplate远程调用python rest接口

#最近在写Hadoop集群推荐系统,后台实用的是SpringBoot,然鹅后台的数据分析核心的算法部分是和SpringBoot分离的 需要远程调用 Python使用的是django,Java是Springboot,Python调Java可以使用Telnet调用Java的dubbo接口(会另写一篇),Java调用Python就是用Spring提供的RestTemplate 需求:SpringB...

プロノCodeSteel 2610

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

springboot调用python脚本_SpringBoot——RestTemplate远程调用python rest接口

#最近在写Hadoop集群推荐系统,后台实用的是SpringBoot,然鹅后台的数据分析核心的算法部分是和SpringBoot分离的需要远程调用Python使用的是django,Java是Springboot,Python调Java可以使用Telnet调用Java的dubbo接口(会另写一篇),Java调用Python就是用Spring提供的RestTemplate需求:SpringBoot远程调...

weixin_39892842的博客 536

JAVA调用Python接口并接收参数(基于SpringBoot)

JAVA调用Python接口并接收参数,基于SpringBoot框架

m0_57232638的博客 1270

Java开发者AI入门:通过SpringBoot调用DAMOYOLO-S REST API

本文介绍了Java开发者如何利用星图GPU平台,自动化部署DAMOYOLO-高性能通用检测模型-S镜像,并快速构建AI服务。通过SpringBoot调用其REST API,开发者可轻松将目标检测能力集成到现有系统中,典型应用场景如智能图片内容识别,自动标注其中的物体(如人、车等)。

weixin_35748962的博客 33

SpringBoot与深度学习集成实战:构建智能招聘匹配系统

自然语言处理(NLP)作为人工智能的核心分支,通过让计算机理解人类语言,在文本分类、情感分析和语义匹配等场景中发挥着关键作用。其技术原理基于预训练语言模型,如BERT及其变体,能够将文本转化为高维向量表示,从而计算语义相似度。这种技术价值在于能够从海量非结构化文本中提取深层语义信息,显著提升信息处理的自动化与智能化水平。在工程实践中,将NLP模型以微服务形式集成到企业级应用已成为主流范式,尤其在招聘、推荐和客服等需要处理大量文本数据的场景中。本文以智能招聘系统为例,详细解析如何利用Sentence-BERT

weixin_30633405的博客 305

mPLUG-Owl3-2B与SpringBoot集成:Java后端开发指南

本文介绍了如何将多模态AI模型🦉 mPLUG-Owl3-2B集成到SpringBoot后端项目中,构建REST API服务。开发者可以在星图GPU平台上自动化部署该镜像,快速获得模型运行环境,从而便捷地开发诸如“图片问答”等应用,例如用户上传图片并提问,系统即可返回基于图像内容的理解与回答。

weixin_42620563的博客 246

SpringBoot汽车租赁系统设计与核心技术解析

汽车租赁系统作为典型的业务管理系统,其核心在于解决实时库存管理、动态定价和用户信用评估等技术难点。基于SpringBoot框架开发的企业级应用,通过Redis实现毫秒级缓存更新,结合弹性定价算法和第三方征信接口,构建了完整的租车业务闭环。这类系统开发涉及多语言技术选型,Java适合处理核心业务逻辑,Node.js擅长高并发IO,Python在数据分析领域优势明显。在实现层面,乐观锁解决库存超卖、分页查询防止内存溢出、RESTful接口实现跨语言调用等方案,都具有普适性的工程实践价值。对于计算机专业学生而言,

weixin_30268071的博客 393

基于RetinaFace的Java开发实战:SpringBoot集成人脸检测服务

本文介绍了如何在星图GPU平台上自动化部署RetinaFace人脸检测关键点模型,实现高效的人脸检测服务。通过该平台,开发者可快速集成该模型至SpringBoot应用,广泛应用于图片处理、安防监控和人脸识别等场景,显著提升开发效率和系统性能。

weixin_32047493的博客 397

Java开发者集成PP-DocLayoutV3指南:SpringBoot服务调用与结果处理

本文介绍了如何在星图GPU平台上自动化部署PP-DocLayoutV3镜像,实现文档版面分析功能。通过该方案,Java开发者可轻松将AI能力集成到SpringBoot应用中,自动化处理发票、合同等文档图片,快速识别其中的标题、段落、表格等关键区域,提升信息提取效率。

weixin_26907223的博客 85

SenseVoice-Small与SpringBoot的集成开发实战

本文介绍了如何在星图GPU平台上自动化部署sensevoice-small-语音识别-onnx模型(带量化后)镜像,并详细阐述了将其与SpringBoot服务集成的开发实战。该方案通过构建独立的Python语音识别服务,为Java后端提供了高效的语音转文字能力,典型应用于智能客服、会议纪要转写等场景,实现了轻量、易集成且效果可靠的AI语音识别解决方案。

weixin_42576804的博客 274

RMBG-2.0 Java开发指南:SpringBoot集成实战

本文介绍了如何在星图GPU平台上自动化部署RMBG-2.0轻量级 AI 图像背景去除工具镜像,实现高效、可控的图像处理能力。通过平台一键部署,Java开发者可快速集成该模型至SpringBoot应用,典型应用于电商商品图批量抠图、数字人前景分离及用户头像透明化等场景,显著提升图像处理自动化水平。

weixin_36382073的博客 317

StructBERT情感分类模型与SpringBoot集成实战

本文介绍了如何在星图GPU平台上自动化部署StructBERT情感分类-中文-通用-base镜像,快速搭建中文文本情感分析服务。该镜像能够准确识别文本情感倾向(正面/负面),典型应用于电商评论分析、社交媒体监控等场景,帮助开发者高效构建AI驱动的应用。

weixin_30336531的博客 18

MogFace人脸检测模型Java后端服务实战:SpringBoot集成与高并发优化

本文介绍了如何在星图GPU平台上自动化部署MogFace人脸检测模型- WebUI镜像,快速搭建高性能的人脸检测服务。该方案通过SpringBoot集成与高并发优化,可应用于智能门禁系统等场景,实现高效、稳定的人脸检测功能。

weixin_35751412的博客 37
上一篇: Java多线程之——ThreadLocal
下一篇: Python使用Telnet远程调用Dubbo接口
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值