然后定义一个PL/SQL包装它映射Java 调用到PL/SQL,接受CHAR语句返回布尔类型:
create or replace package ctype as
function isalnum(p_char in char) return boolean;
function isalpha(p_char in char) return boolean;
function iscntrl(p_char in char) return boolean;
function isdigit(p_char in char) return boolean;
function isspace(p_char in char) return boolean;
function islower(p_char in char) return boolean;
function isupper(p_char in char) return boolean;
end;
/
show errors;
create or replace package body ctype as
function isalnum_j(p_char in varchar2) return number
as language java
name 'ctype.isalnum(java.lang.String) return int';
function isalpha_j(p_char in varchar2) return number
as language java
name 'ctype.isalpha(java.lang.String) return int';
--
function iscntrl_j(p_char in varchar2) return number
as language java
name 'ctype.iscntrl(java.lang.String) return int';
--
function isdigit_j(p_char in varchar2) return number
as language java
name 'ctype.isdigit(java.lang.String) return int';
--
function isspace_j(p_char in varchar2) return number
as language java
name 'ctype.isspace(java.lang.String) return int';
--
function islower_j(p_char in varchar2) return number
as language java
name 'ctype.islower(java.lang.String) return int';
--
function isupper_j(p_char in varchar2) return number
as language java
name 'ctype.isupper(java.lang.String) return int';
--
function isalnum(p_char in char) return boolean is
begin
return isalnum_j(p_char) = 1;
end isalnum;
--
function isalpha(p_char in char) return boolean is
begin
return isalpha_j(p_char) = 1;
end isalpha;
--
function iscntrl(p_char in char) return boolean is
begin
return iscntrl_j(p_char) = 1;
end iscntrl;
--
function isdigit(p_char in char) return boolean is
begin
return isdigit_j(p_char) = 1;
end isdigit;
--
function isspace(p_char in char) return boolean is
begin
return isspace_j(p_char) = 1;
end isspace;
--
function islower(p_char in char) return boolean is
begin
return islower_j(p_char) = 1;
end islower;
--
function isupper(p_char in char) return boolean is
begin
return isupper_j(p_char) = 1;
end isupper;
end;
/
show errors;
