版权声明:转载请注明出处https://blog.csdn.net/weixin_42116406 https://blog.csdn.net/weixin_42116406/article/details/84791259
请尊重版权,转载请注明出处。谢谢!
jar包所依赖的文件和C:\Program Files\Java\jre1.8.0_191\lib\ext文件目录下的jar包要全部一起放到同个文件夹(如:C:/lo4jar),否者会提示找不到类。
#!/usr/bin/env python
#coding:utf-8
import requests
import unittest
import json
import mmap
import jpype
from jpype import *
import os.path
def test_login():
url = 'http:xxxxxxxxxxxxxxxx'
jarpath2 = r'com.foresee.open.sdk.client-2.1.8-jar-with-dependencies.jar'
jarpath3 = r'foresee-util.jar'
jarpath9=os.path.join(os.path.abspath('.'), 'C:/lo4jar')# jar所依赖的文件全部丢入一个文件夹
jvmPath = jpype.getDefaultJVMPath()
print(jvmPath)
jpype.startJVM(jvmPath, "-ea", "-Djava.class.path=%s;%s" %(jarpath2,jarpath3),"-Djava.ext.dirs=%s"%jarpath9)
tclass1 = jpype.JClass("com.foresee.util.TranSeqGeneratorNumUtil")
tclass = jpype.JClass("com.foresee.open.sdk.client.OpenApiClient")
TranSeq = tclass1.generateTranseq("frse", "", "") # 静态方法
print("流水号:")
print(TranSeq)
customerAppId ="10002017"
providerAppId="10001101"
key="W9y4DjA5qF90A7Kg"
t1 = JPackage("com.foresee.open.sdk.client").OpenApiClient(customerAppId , key) # 动态方法
concent2 = "{\"sjly\": \"\", \"yhzh\": \"PYuansan\", \"yhmm\": \"wmHux8j273I=\", \"sjc\": \"\", \"dljklx\": \"smz\"}"
body = {
"tranSeq": "" + TranSeq + "",
"areaCode": "44",
"nsrsbh": "91441K",
"contentEncryptType": "",
"gdslxDm": "1",
"appid": "",
"clientNo": "",
"djxh": "",
"sessionid": "",
"contentType": "JSON",
"content": "" + concent2 + "",
"swjgDm": "00000000000",
"sjjg": "00000000000"
}
bodyjson=json.dumps(body)
print("请求报文是:")
print(bodyjson)
rps=t1.requestApp(url,bodyjson,providerAppId)
print("返回信息是:")
print(rps)
jpype.shutdownJVM()
if __name__ == '__main__':
test_login()