背景需求
最近项目中有需要 Java 调用 Python 的需求,正好博主之前用 Python 写脚本的时候采用过 Java 调用 Python 脚本,正好回顾一下
代码实现
python 代码
py 代码很简单,这里只做演示,不涉及具体业务

Java 代码
- 引入 maven 依赖
<dependency>
<groupId>org.python</groupId>
<artifactId>jython-standalone</artifactId>
// 版本具体参考 maven 仓库版本
<version>2.7.2</version>
</dependency>
- 代码实现

pythonInterpreter.get中第一个参数为 python 函数的名字,第二个参数为返回的对象类型pythonInterpreter.execfile有几个重载方法,可点击源码自行查看test.call可传参也可不传参,具体要求以 pyhton 函数为依据;如果需要传参,这里需要注意传参类型为 python 所需的数据类型,即 PyObject 及其子类,这里为 PyInteger

实现结果

- 这里仅作输出使用,实际业务场景中需根据具体返回数据做不同业务处理
实践总结
- 主要为:
PythonInterpreter - 多个 py 脚本文件可合成一个
- Java 中常见的并发问题,这里需要注意,常用操作就是调用 py 脚本时加锁,具体根据业务实现来
- 插件官网地址:https://www.jython.org/download.html
本文介绍了如何在Java项目中使用Jython库调用Python脚本,详细讲解了引入Maven依赖、执行Python代码以及参数传递的方法。同时,文章提到了在多线程环境下可能遇到的并发问题,建议在调用Python脚本时进行加锁控制。

899

被折叠的 条评论
为什么被折叠?



