|
一次用到JAVA的对接,也在网上找了很久,个有各的写法,大神们的描述到很简单,我这种菜鸟半天不理解,最后无数次尝试用终于明白了一点点,写出来与大家分享下,本人菜鸟一个,有错请指出,第一次写,不懂怎么用易代码模式,只能这样贴了
.版本 2
.支持库 Javalib
.子程序 签名, 文本型, 公开
.参数 参数1, 文本型
.局部变量 java虚拟, Java虚拟机
.局部变量 java接口, Java本地接口
.局部变量 java类, 整数型
.局部变量 java方法, 整数型
.局部变量 创建结果, 逻辑型
.局部变量 取对象, 逻辑型
.局部变量 返回结果, String_Java
.局部变量 返回, 整数型
.局部变量 sing, 文本型
.局部变量 pem, 文本型
.局部变量 encode, 文本型
创建结果 = java虚拟.创建 (取运行目录 () + “\gouyaorsa.jar”, )
java类 = java接口.加载类 (“com.hnluchuan.openapi.security.RSASignature”) ' 连接JAVA的类,用到方法的那个类,完整的类,一级到一级
java方法 = java接口.取静态方法标志符 (java类, “sign”, “(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;”)
' 连接java类下面的方法,这个结构可以用JAVAC来查,一般过不去的就是这个“(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;” 出问题,
pem = 读配置项 (取运行目录 () + “\com.ini”, “连接变量”, “pem”, )
encode = “utf-8”
取对象 = java接口.静态对象方法 (java类, java方法, 返回结果.StringObject.object标识, java接口.创建字符串 (参数1), java接口.创建字符串 (pem), java接口.创建字符串 (encode))
‘这写法是固定的“(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)对应的是java接口.创建字符串 (参数1), java接口.创建字符串 (pem), java接口.创建字符串 (encode),主要问题是出在java接口.静态对象方法,库里有两个java接口.静态对象方法和java接口.对象方法,JAVA里用的静态方法那这里就得用java接口.静态对象方法,我在这里转了好久都取不出值,
返回结果.文本型 = java接口.取字符串文本 (返回结果.StringObject.object标识, ) ‘这个也没弄太明白,照着大神的写
返回 (返回结果.文本型)
第一次看这代码是真是晕晕的,网上也找了很多的案例源码,各有各的写,之后自己一条条试加备注,才理清,写完发现也挺简单的了
|
|