docker Mysql-udf-http

 1.Mysql-udf-http镜像已上传到dockerhub中

docker pull heidaodageshiwo/mysql-udf-http:v1

2.启动镜像(默认密码root1234)

docker run -tid -p 3306:3306 --name=mysql-udf-http --privileged=true heidaodageshiwo/mysql-udf-http:v1

3.命令

[root@localhost ~]# docker images
REPOSITORY                       TAG       IMAGE ID       CREATED         SIZE
heidaodageshiwo/mysql-udf-http   v1        fc2684ea3cec   11 months ago   5.36GB
[root@localhost ~]# docker start mysql
mysql
[root@localhost ~]# docker ps
CONTAINER ID   IMAGE               COMMAND            CREATED       STATUS         PORTS                                                 NAMES
e55e89d35e01   mysql-udf-http:v1   "/usr/sbin/init"   10 days ago   Up 2 seconds   0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 9001/tcp   mysql
[root@localhost ~]# ^C
[root@localhost ~]#

4.连接:root/root1234

5.运行

SELECT http_post('http://192.168.101.9:8054/udf/test2','a=xoyo333&b=0111111');  


192.168.101.9:机器ip地址 8054项目端口  udf/test2接口  a=xoyo333&b=0111111入参

6.java代码:

controller

@RequestMapping("/udf")
@RestController
public class MysqlUdfHttpController {@ResourceUdfMapper udfMapper;@RequestMapping("/test2")public String getMenuList12(String a,String b) {return a+b;}@RequestMapping("/test1")public List<Menu> test1(@RequestParam long pid) {String s = udfMapper.httpGets("http://192.168.101.9:8054/udf/test11?pid=1" );List<Menu> menus = JSONArray.parseArray(s, Menu.class);return menus;}@RequestMapping("/test11")public List<Menu> test11(@RequestParam long pid) {List<Menu> menu = menuService.findMenu(pid);return menu;}}
UdfMapper
package com.zq.mybatisexample.mapper;import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;@Mapper
public interface UdfMapper {@Select("select http_get(#{url}, #{params}) as response from dual")String httpGet(@Param("url") String url, @Param("params") String params);@Select("select http_post(#{url}, #{params}) as response from dual")String httpPost(@Param("url") String url, @Param("params") String params);@Select("select http_get(#{url}) from dual")String httpGets(@Param("url") String url );}

7.测试:

navaicat中运行选择的sql即可调用到 代码中的代码:

8.例子2:实现(  请求java接口->mysql udf ->  java接口  )

页面请求接口:http://localhost:8054/udf/test1?pid=1

解释:

页面调用:http://localhost:8054/udf/test1?pid=1

然后使用mysql udf的转发功能 

String s = udfMapper.httpGets("http://192.168.101.9:8054/udf/test11?pid=1" );

这一句作用:让mysql udf数据库去调用 

http://192.168.101.9:8054/udf/test11?pid=1  这个接口  (
可结合使用上方例子1  SELECT http_post('http://192.168.101.9:8054/udf/test2','a=vvv&b=aaaaa');   
来理解即可
)

然后test11接口返回数据即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/229025.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C++对于C语言的扩充】C++与C语言的联系,命名空间、C++中的输入输出以及缺省参数

文章目录 &#x1f680;前言&#x1f680;C有何过C之处&#xff1f;&#x1f680;C中的关键字&#x1f680;命名空间✈️为什么要引入命名空间&#xff1f;✈️命名空间的定义✈️如何使用命名空间中的内容呢&#xff1f; &#x1f680;C中的输入和输出✈️C标准库的命名空间✈…

【K8S 二进制部署】部署单Master Kurbernetes集群

目录 一、基本架构和系统初始化 1、集群架构&#xff1a; 2、操作系统初始化配置&#xff1a; 2.1、关闭防火墙和安全机制&#xff1a; 2.2、关闭swap 2.3、根据规划设置主机名 2.4、三台主机全部互相映射 2.5、调整内核参数 3、时间同步&#xff08;所有节点时间必须同…

一文讲透怎么用SPSS做曲线回归分析?

使用SPSS的“曲线估算回归分析”即可。 以下案例节选自《SPSS统计学基础与实证研究应用精解》张甜 杨维忠 清华大学出版社 2023年 12.3 曲线估算回归分析。 下面我们以销售额作为因变量&#xff0c;以营销费用投入作为自变量&#xff0c;开展曲线估算回归分析&#xff0c;SPS…

mac中excel条件格式找到每一列的最大值并标红

假设现在excel有A1:R24组数据&#xff0c;最终效果如下 先选择要处理数据的第一列&#xff0c;然后点击【条件格式】-【新建规则】 style选择【classic】以及【Use a formula to determine which cells to format】&#xff0c;输入规则【C3MAX(C$3:C$24)】 注意这里C$3前面没…

堆的应用:堆排序和TOP-K问题

上次才讲完堆的相关问题&#xff1a;二叉树顺序结构与堆的概念及性质&#xff08;c语言实现堆 那今天就接着来进行堆的主要两方面的应用&#xff1a;堆排序和TOP-K问题 文章目录 1.堆排序1.1概念、思路及代码1.2改良代码&#xff08;最初建立大堆用AdjustDow&#xff09; 2. TO…

WINDOWS 批量修改图片文件名称(流星程序集之二十)

博主家里有一台电脑&#xff0c;存放家庭全部的照片和视频&#xff0c;从智能手机和3G网络发展开始&#xff0c;家里的照片和视频越来越多&#xff0c;已经达到上万个文件。终于&#xff0c;博主找到一个方法整理和保存这些珍贵的数据资料。 一、按年代目录整理照片和视频 按年…

钡铼技术集IO数据采集可编程逻辑控制PLC无线4G环保物联网关

背景 数据采集传输对于环保企业进行分析和决策是十分重要的&#xff0c;而实时数据采集更能提升环保生产的执行力度&#xff0c;从而采取到更加及时高效的措施。因此实时数据采集RTU成为环保企业的必备产品之一。 产品介绍 在推进环保行业物联网升级过程中&#xff0c;环保RTU在…

【华为机试】2023年真题B卷(python)-欢乐的周末

一、题目 题目描述&#xff1a; 小华和小为是很要好的朋友&#xff0c;他们约定周末一起吃饭。 通过手机交流&#xff0c;他们在地图上选择了多个聚餐地点&#xff08;由于自然地形等原因&#xff0c;部分聚餐地点不可达&#xff09;&#xff0c;求小华和小为都能到达的聚餐地点…

计算机基础面试题 |03.精选计算机基础面试题

&#x1f90d; 前端开发工程师&#xff08;主业&#xff09;、技术博主&#xff08;副业&#xff09;、已过CET6 &#x1f368; 阿珊和她的猫_CSDN个人主页 &#x1f560; 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 &#x1f35a; 蓝桥云课签约作者、已在蓝桥云…

RocketMQ 生产者源码分析:DefaultMQProducer、DefaultMQProducerImpl

&#x1f52d; 嗨&#xff0c;您好 &#x1f44b; 我是 vnjohn&#xff0c;在互联网企业担任 Java 开发&#xff0c;CSDN 优质创作者 &#x1f4d6; 推荐专栏&#xff1a;Spring、MySQL、Nacos、Java&#xff0c;后续其他专栏会持续优化更新迭代 &#x1f332;文章所在专栏&…

第6课 用window API捕获麦克风数据并加入队列备用

今天是2024年1月1日&#xff0c;新年的第一缕阳光已经普照大地&#xff0c;祝愿看到这篇文章的所有程序员或程序爱好者都能在新的一年里持之以恒&#xff0c;事业有成。 今天也是我加入CSDN的第4100天&#xff0c;但回过头看一看&#xff0c;这么长的时间也没有在CSDN写下几篇…

【docker实战】02 用docker安装mysql

本示例采用bitnami的镜像进行安装MySQL&#xff0c;官网链接&#xff1a;https://bitnami.com/stacks 一、镜像搜索 先搜索一下mysql有哪些镜像 [rootlocalhost ~]# docker search mysql NAME DESCRIPTION …

啊?这也算事务?!

作者简介&#xff1a;大家好&#xff0c;我是smart哥&#xff0c;前中兴通讯、美团架构师&#xff0c;现某互联网公司CTO 联系qq&#xff1a;184480602&#xff0c;加我进群&#xff0c;大家一起学习&#xff0c;一起进步&#xff0c;一起对抗互联网寒冬 学习必须往深处挖&…

【SAM系列】Auto-Prompting SAM for Mobile Friendly 3D Medical Image Segmentation

论文链接&#xff1a;https://arxiv.org/pdf/2308.14936.pdf 核心&#xff1a; finetune SAM,为了不依赖外部prompt&#xff0c;通过将深层的特征经过一个编-解码器来得到prompt embedding&#xff1b;finetune完之后做蒸馏

c语言:用指针输入两个数组|练习题

一、题目 利用指针&#xff0c;输入两个数组 如图&#xff1a; 二、代码截图【带注释】 三、源代码【带注释】 #include <stdio.h> int main() { int a[50]; int b[50]; int *paa,*pbb; //输入第一组数组 printf("请输入第一组5个数字&#xff1a;…

骑砍战团MOD开发(27)-module_tableau_materials.py材质

一.配置材质资源 OpenBrf寻找对应材质资源. tableau配置材质资源 ("round_shield_1", 0, "sample_shield_round_1", 512, 256, 0, 0, 0, 0,[(store_script_param, ":banner_mesh", 1),(set_fixed_point_multiplier, 100),(init_position, pos1),…

【中南林业科技大学】计算机组成原理复习包括题目讲解(超详细)

来都来了点个赞收藏关注一下再走呗&#x1f339;&#x1f339;&#x1f339;&#x1f339; 第1章&#xff1a;绪论 1.冯诺依曼机特点&#xff0c;与现代计算机的区别 冯诺依曼计算机的基本思想是&#xff1a;程序和数据以二进制形式表示&#xff0c;存储程序控制。在计算机中&…

ctfshow——文件上传

文章目录 文件上传思路web 151web 152web 153知识点解题 web 154web 155web 156web 157web 158web 159web160web 161 文件上传思路 web 151 打开页面显示&#xff1a;前台校验不可靠。说明这题是前端验证。 右键查看源代码&#xff0c;找到与上传点有关的前端代码&#xff1a…

Android 13 默认关闭 快速打开相机

介绍 在设置菜单的手势界面里&#xff0c;快速打开相机是默认开启的&#xff0c;此功能当开启时连续点击两次电源键会打开相机&#xff0c;现在客户需要默认关闭。 效果展示 修改 这里一开始想到的就是配置文件&#xff0c;在路径下果然找到了,从注释中看使我们需要的&#x…

Vue中使用JavaScript中的requestAnimationFrame动画循环实现循环滚动效果-demo

效果 requestAnimationFrame是一个由浏览器提供的 JavaScript 方法&#xff0c;用于在下一次浏览器重绘之前执行指定的回调函数。它接受一个回调函数作为参数&#xff0c;并返回一个整数值&#xff0c;可以用于取消动画循环。 使用 requestAnimationFrame 可以创建平滑的动画效…