postgres插件部署+函数开发 - pl/java安装(centos7)

一、安装postgres
sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo yum install -y postgresql11-server
sudo /usr/pgsql-11/bin/postgresql-11-setup initdb
sudo systemctl enable postgresql-11
sudo systemctl start postgresql-11
yum install -y postgresql11-libs postgresql11 postgresql11-devel
yum -y install postgresql11-contrib postgresql11-server

yum install gcc gcc-c++
二、安装openjdk
三、安装mvn

三、下载pljava,链接为git clone https://github.com/tada/pljava
cd pljava
mvn clean install(mvn -Dpgsql.pgconfig=/usr/pgsql-11/bin/pg_config clean install)
在这里插入图片描述
四、设置pljava.libjvm_location
cd /var/lib/pgsql/11/data/
pljava.libjvm_location=‘/usr/soft/openjdk11/lib/server/libjvm.so’

在这里插入图片描述
修改pg_hba.conf

在这里插入图片描述

自定义函数开发

package test;

public class function {
    public static String hello(String str){
        return "hello : " + str;
    }

    public static int arraycount(String[] arr){
        return arr.length;
    }

    public static void main(String[] args) {
        System.out.println(hello("123456"));
    }
}

引用文件
select sqlj.install_jar(‘file:///pljava/pgjava.jar’,‘hello’,true);
更新jar包
— select sqlj.replace_jar(‘file:///pljava/pgjava.jar’,‘hello’,true);
Set schema下的类
select sqlj.set_classpath(‘public’,‘hello’);
创建function
create function sayhello(varchar) returns varchar as ‘test.function.hello’ language java;
drop function sayhello(varchar);

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

stable diffusion--小白学习步骤

1.看一下Unet网络的讲解_哔哩哔哩_bilibili,了解Unet网络 2.看一下【生成式AI】Diffusion Model 原理剖析 (1/4)_哔哩哔哩_bilibili,起码要看前3/6个视频 3.看一下超详细的扩散模型(Diffusion Models)原理代码 - 知乎 (zhihu.co…

前端-vue项目debugger调试

一、前言 有的时候接受同事一个项目,用框架不一样,写的也不太规范,那么就需要打断点去学习改项目的流程了。 那么vue项目是如何debugger调试呢? 二、操作 大概理解一下,vue项目启动,大概是先启动框架&am…

nginx 卸载和安装超详细教程

一、前言 由于现在nginx有版本漏洞,所以很多安装过nginx的需要卸载重新安装,没安装过的,切记不要乱安装版本。 OK以上版本切记不能再用了! 废话不多说,直接上干货。 二、卸载 1、停止Nginx进程 命令行停止&#xf…

【C++成长记】C++入门 | 类和对象(上) |面向过程和面向对象初步认识、类的引入、类的定义、类的访问限定符及封装

🐌博主主页:🐌​倔强的大蜗牛🐌​ 📚专栏分类:C❤️感谢大家点赞👍收藏⭐评论✍️ 一、面向过程和面向对象初步认识 C语言是面向过程的,关注的是过程,分析出求解问题的步…

【日常记录】【CSS】利用动画延迟实现复杂动画

文章目录 1、介绍2、原理3、代码4、参考链接 1、介绍 对于这个效果而言,最先想到的就是 监听滑块的input事件来做一些操作 ,但是会发现,对于某一个节点的时候,这个样式操作起来比较麻烦 只看这个代码的话,发现他用的是动画&#x…

第47期 | GPTSecurity周报

GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区,集成了生成预训练Transformer(GPT)、人工智能生成内容(AIGC)以及大语言模型(LLM)等安全领域应用的知识。在这里,您可以找…

通过超分辨率像素引导的Scribble Walking和逐类对比正则化的弱监督医学图像分割(SC-Ne)论文速读

目录 Weakly Supervised Medical Image Segmentation via Superpixel-Guided Scribble Walking and Class-Wise Contrastive Regularization摘要方法实验结果 Weakly Supervised Medical Image Segmentation via Superpixel-Guided Scribble Walking and Class-Wise Contrastiv…

召唤新版「数据库 GitOps 」体验官,赢取新款 Bytebase 限量周边!

距上一次「产品体验官|基于 GitHub 的数据库 CI/CD」已有一年半了⌛️ Bytebase 于上周发布了 Bytebase 2.15.0 - GitOps 整体升级 🎊 全新的 GitOps 体验,更易上手,更简洁!🤩 不管你是否使用过 Byteb…

【SpringBoot实战篇】登录认证

🍀🌸明确需求--接口文档--思路分析--开发--测试🌸🍀💕 1 明确需求 2 接口文档 登录 3 思路分析 UserServic、UserMapper在注册的时候已经实现 现在我们重点看UserController 控制器 4 开发(实现&#xff0…

一篇安装配置ubuntu22.04(步骤详细,配置成功)

一篇配置ubuntu22.04(步骤详细,配置成功) 官网下载相应的镜像 vitualbox安装ubuntu 新建虚拟机 第一步 第二步 第三步、按需分配内存、处理器个数、磁盘大小 第四步、一直下一步直至完成 配置虚拟机网络 第一步、先停止虚拟机 第二步、设置虚拟机网络 正常启…

Hudi-IDEA编程

项目 一、HudiSparkKafka(Scala) 配置详见【1.Scala配置】 依赖详见【1.HudiSparkKafka依赖】 1-1 构建SparkSession对象 def main(args: Array[String]): Unit {//1.构建SparkSession对象val spark: SparkSession SparkUtils.createSparkSession(…

7.C++:多态

一、 virtual关键字 //1.可以修饰原函数,为了完成虚函数的重写,满足多态的条件之一; //2.可以在菱形继承中,完成虚继承,解决数据冗余和二义性; 两个地方使用同一关键字,但二者间没有一点关联 二…

【C 数据结构】单链表

文章目录 【 1. 基本原理 】1.1 链表的节点1.2 头指针、头节点、首元节点 【 2. 链表的创建 】2.0 创建1个空链表(仅有头节点)2.1 创建单链表(头插入法)*2.2 创建单链表(尾插入法) 【 3. 链表插入元素 】【…

【文件系统】 F2FS文件系统学习

一、基本介绍 1、F2FS History F2FS(Flash Friendly File System)是专门为Nand Flash设计的一个日志型文件系统,于2012年12月合入Linux3.8内核,Google也在2018年(Android P)将其吸收到安卓原生版本中&…

近屿智能全新推出AI培训产品:AIGC大模型工程师与产品经理学习路径图

如今,人工智能和自然语言处理技术的发展,使得AI生成的内容(AIGC,AI Generated Content)领域开发出了巨大的潜力。就像业内巨头OpenAI公司,开发出了一系列自然语言处理模型ChatGPT,不仅带动了全世…

#陶晶驰串口屏使用

1.陶晶驰串口屏输入要连接的wifi信息实现 (1)选择文本控件 (2)给文本控件配置输入键盘,id代表用户名,password代表wifi密码(注意wifi的频段需要为2.4GHz) (3&#xff0…

微信小程序获取蓝牙信标

/*** 搜索设备界面*/ import Dialog from vant/weapp/dialog/dialog; Page({data: {list: []},onPullDownRefresh: function () {wx.request({url: https://wwz.jingyi.icu/app/Explain/index,data: {scenic_id: 3},method: POST,success: (res) > {console.log(res);let th…

Elastic安装后 postman对elasticsearch进行测试

一、创建索引和mapping //id 字段自增id //good_sn 商品SKU //good_name 商品名称 //good_introduction 商品简介 //good_descript 商品详情 PUT http://IP:9200/shop { "mappings":{ "good":{ "properties":{ …

基于Linux C++多线程服务器 + Qt上位机开发 + STM32 + 8266WIFI的智慧无人超市

前言 针对传统超市购物车结账排队时间长、付款效率低的问题,提出了一种更符合现代社会人们购物方式-基于RFID的自助收银系统。习惯了快节奏生活的人们都会选择自助收银机结账,理由显而易见:自助收银机结账很方便,几乎不用排队&am…

MongoDB的安装配置及使用

文章目录 前言一、MongoDB的下载、安装、配置二、检验MongoDB是否安装成功三、Navicat 操作MongoDB四、创建一个集合,存放三个文档总结 前言 本文内容: 💫 MongoDB的下载、安装、配置 💫 检验MongoDB是否安装成功 ❤️ Navicat 操…