mvn clean package
At this time we can get a java-udf-demo.jar
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
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" );
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" );
mysql> select ase_encryp('zhangfeng','java_udf_function'); +----------------------------------------------+ | ase_encryp('zhangfeng', 'java_udf_function') | +----------------------------------------------+ | 4442106BB8C98E74D19CEC0413467810 | +----------------------------------------------+ 1 row in set (0.76 sec)
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" );
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" );
mysql> select ase_decryp('4442106BB8C98E74D19CEC0413467810','java_udf_function'); +---------------------------------------------------------------------+ | ase_decryp('4442106BB8C98E74D19CEC0413467810', 'java_udf_function') | +---------------------------------------------------------------------+ | zhangfeng | +---------------------------------------------------------------------+ 1 row in set (0.02 sec)