tree: df8e70c8f5ae8604ef55e654d03d34decf7281e2 [path history] [tgz]
  1. src/
  2. pom.xml
  3. Readme.md
samples/doris-demo/java-udf-aes-demo/Readme.md

Compile and package

mvn clean package

At this time we can get a java-udf-demo.jar

Register function

Register encryption function

There are two parameters here, one is the encrypted content, the other is the secret key, and the return value is a string

Local file mode

CREATE FUNCTION ase_encryp(string,string) RETURNS string PROPERTIES (
   "file"="file:///path/work/doris.java.udf.demo/target/java-udf-demo.jar",
   "symbol"="org.apache.doris.udf.demo.AESEncrypt",
   "always_nullable"="true",
   "type"="JAVA_UDF"
);

http method

CREATE FUNCTION ase_encryp(string,string) RETURNS string PROPERTIES (
   "file"="http://hostname/work/doris.java.udf.demo/java-udf-demo.jar",
   "symbol"="org.apache.doris.udf.demo.AESEncrypt",
   "always_nullable"="true",
   "type"="JAVA_UDF"
);

Run function

mysql> select ase_encryp('zhangfeng','java_udf_function');
+----------------------------------------------+
| ase_encryp('zhangfeng', 'java_udf_function') |
+----------------------------------------------+
| 4442106BB8C98E74D19CEC0413467810             |
+----------------------------------------------+
1 row in set (0.76 sec)

Decryption function

CREATE FUNCTION ase_decryp(string,string) RETURNS string PROPERTIES (
  "file"="file:///path/work/doris.java.udf.demo/target/java-udf-demo.jar",
  "symbol"="org.apache.doris.udf.demo.AESDecrypt",
  "always_nullable"="true",
  "type"="JAVA_UDF"
);

http method

CREATE FUNCTION ase_decryp(string,string) RETURNS string PROPERTIES (
  "file"="http://hostname/work/doris.java.udf.demo/java-udf-demo.jar",
  "symbol"="org.apache.doris.udf.demo.AESDecrypt",
  "always_nullable"="true",
  "type"="JAVA_UDF"
);

Run function

mysql> select ase_decryp('4442106BB8C98E74D19CEC0413467810','java_udf_function');
+---------------------------------------------------------------------+
| ase_decryp('4442106BB8C98E74D19CEC0413467810', 'java_udf_function') |
+---------------------------------------------------------------------+
| zhangfeng                                                           |
+---------------------------------------------------------------------+
1 row in set (0.02 sec)