网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

python调用java代码 python怎么调用java

python怎么调用java程序

把java封装成restful接口,然后python通过远程调用数据。

“只有客户发展了,才有我们的生存与发展!”这是成都创新互联的服务宗旨!把网站当作互联网产品,产品思维更注重全局思维、需求分析和迭代思维,在网站建设中就是为了建设一个不仅审美在线,而且实用性极高的网站。创新互联对成都网站建设、成都网站制作、网站制作、网站开发、网页设计、网站优化、网络推广、探索永无止境。

使用Pyjnius这个python库。

#源代码:github点抗 /kivy/pyjnius

#文档:pyjnius.readthedocs.org

#也有其他一些的库,如 JPype 或 Py4j ,它们在设计和可用性方面都不是很好。而使用 Jython也不为另一种选择,因为我们想使用 python开发Android项目。

#现在就让我来告诉你,如何简单的使用Pyjnius:

from jnius import autoclass  

Stack = autoclass('java.util.Stack')  

stack = Stack()  

stack.push('hello')  

stack.push('world')  

stack.pop()  

'world' 

stack.pop()  

'hello'

python调用的java进程在哪看

python调用的java进程在哪看?

最近在做基于python的locust压力测试,api接口程序是java版本,导致python无法匹配签名模式,需要python调用java的签名程序。

首先需要按照python依赖包

pip install jpype1

jpype调用jar包

jpype的原理是在python进程中嵌入了java虚拟机,并与虚拟机进行通信。

复制代码

import jpype

# 如果只有java程序,那需要先打成一个jar包来给python引用 ,有java.jar就可以直接使用

def init_jvm():

jpype.startJVM(jpype.getDefaultJVMPath(), "-ea", "-Djava.class.path=%s" % 'java.jar')

def getsign(privateKey,publicKey):

VerCls = jpype.JClass("com.sign") # 引用的java包与类名

sign = VerCls().getSign(privateKey,publicKey)

return sign

def shutdowm():

try:

jpype.shutdownJVM()

except:

pass

if __name__=="__main__":

init_jvm()

print(getsign("priyyyy","alpha1234"))

shutdowm()

复制代码

代码说明如下:

需要提供java.jar,如果只有java程序,那需要先打成一个jar包来给python引

init_jvm函数中的 jpype.startJVM用来启动java虚拟机,-Djava.class.path 用来指定我们要调用的jar包。

在getsign中,jpype.JClass用来引用sign类,通过实例化并调用getSign实现版本号的比较。

jpype.shutdownJVM()是主动关闭java虚拟机,释放资源。

在java代码中调用python并传递参数

需要用到需要用到jython.jar

java example:

public static void main(String[] args) {

//定义参数

String[] args2 = {"arg1","arg2"};

//设置参数

PythonInterpreter.initialize(null, null, args2);

PythonInterpreter interpreter = new PythonInterpreter();

//执行

interpreter.execfile("E:\\jython.py");

System.out.println("----------run over!----------");

}

python的程序:

#!/bin/env python

import time

import sys

argCount = len(sys.argv)

print('before sleep')

time.sleep(5);

print('after sleep')

for str in sys.argv:

print(str)


网站栏目:python调用java代码 python怎么调用java
网站路径:http://bjjierui.cn/article/ddchjii.html

其他资讯