GBase 8s Java UDR安装说明

创建Java UDR过程

1, 将共享库gbasedbt-judr-x.x.x.jar 放置于数据库服务器上

比如,放到$GBASEDBTDIR/udr 目录下,并改名为judr.jar
则gbasedbt-judr-x.x.x.jar的位置为$GBASEDBTDIR/udr/judr.jar
下载地址:https://docs.gbasedbt.com/Java_Udr/install/gbasedbt-judr-1.0.0.jar

2, 设置数据库的JVP环境

ONCONFIG配置文件涉及到JVP的相关参数

1)VPCLASS开启jvp,用于处理Java UDR,默认不开启,取消前面的注释符’#',如果有较多调用,可增加jvp的数量

VPCLASS jvp,num=1  

2)JVPARGS增加 -Dfile.encoding=UTF-8(根据实际需要增加与否,即直接java执行的参数),JVPCLASSPATH增加judr.jar

JVPARGS -Dcom.ibm.tools.attach.enable=no;-Dfile.encoding=UTF-8  
JVPCLASSPATH $GBASEDBTDIR/extend/krakatoa/krakatoa.jar:$GBASEDBTDIR/extend/krakatoa/jdbc.jar:$GBASEDBTDIR/udr/judr.jar

重启数据库生效,通过onstat -g glo确认已经增加的jvp。

3, 创建相应的例程

示例:

drop function if exists ifnull(lvarchar,lvarchar);
create dba function ifnull(lvarchar,lvarchar)
returns lvarchar
with (not variant, handlesnulls)
  external name 'com.gbasedbt.judr.mysql.MysqlFunc.ifnull(java.lang.String,java.lang.String)'
language java;

其中function中的 ifnull(lvarchar,lvarchar)应与Java中的定义相对应;
external name 为java中的名称: java类名.方法
使用:

select ifnull(null,'abc') from dual;
4, Java Udr 函数说明

Math类
– conv 进制转换函数

function conv(lvarchar,int,int)

– rand 随机函数(1-1亿的随机数)

function rand()

– random 随机函数(0-1之间的随机数)

function random()

– randnum 指定范围内的随机数

function randomnum(int,int)

HEX
– decodeHex
– 使用默认字符集UTF-8

function decodeHex(lvarchar)

– 第二个参数指定字符集,如UTF-8,GBK

function decodeHex(lvarchar,lvarchar)

– encodeHex
– 使用默认字符集UTF-8

function encodeHex(lvarchar)

– 第二个参数指定字符集,如UTF-8,GBK

function encodeHex(lvarchar,lvarchar)

CRYPT
– decodeBase64
– 输出ascii结果

function decodeBase64(lvarchar)

– decodeBase64Hex
– 输出hex结果

function decodeBase64Hex(lvarchar)

– decryptAES (PKCS5)
– 指定8位secret

function decryptAES(lvarchar,lvarchar)

– 使用默认的8位secret

function decryptAES(lvarchar)

– decryptDES (PKCS5)
– 指定8位secret

function decryptDES(lvarchar,lvarchar)

– 使用默认的8位secret

function decryptDES(lvarchar)

– encodeBase64
– 输出ascii结果

function encodeBase64(lvarchar)

– encodeBase64Hex
– 输出hex结果

function encodeBase64Hex(lvarchar)

– encodeMD5

function encodeMD5(lvarchar)

– encryptAES
– 指定8位secret

function encryptAES(lvarchar,lvarchar)

– 使用默认的8位secret

function encryptAES(lvarchar)

– encryptDES
– 指定8位secret

function encryptDES(lvarchar,lvarchar)

– 使用默认的8位secret

function encryptDES(lvarchar)

– sm4_decrypt
– 指定16位secret

function decryptSM4(lvarchar,lvarchar)

– 使用默认的16位secret

function decryptSM4(lvarchar)

– sm4_encrypt
– 指定16位secret

function encryptSM4(lvarchar,lvarchar)

– 使用默认的16位secret

function encryptSM4(lvarchar)

MySQL兼容
– ascii

function jascii(lvarchar)

– chr

function jchr(int)

– randomstr,随机字符串

function randomstr(int)

– 指定大小写

function randomstr(lvarchar,int)

– uuid

function juuid()

– now

function now()

– unix_timestamp

function unix_timestamp()
-- 指定日期时间字符串  
function unix_timestamp(lvarchar)

– from_unixtime

function from_unixtime(int)

– ifnull

function ifnull(lvarchar,lvarchar)

– find_in_set 兼容函数

function find_in_set(lvarchar,lvarchar)

– format 兼容函数

function format(float,int)

– repeat 兼容函数

function repeat(lvarchar,int)

说明
gbasedbt-judr-x.x.x.jar中包含的函数,具体参考javadoc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值