当前位置: 首页 > 知识库问答 >
问题:

将数据从java传递到python并返回jython

傅和璧
2023-03-14

我正在使用Jython从Java运行python脚本。当我使用PythonInterpreter调用python脚本时,我可以将数据作为命令行参数发送到python脚本。

共有1个答案

乐刚毅
2023-03-14

我发布了从Java->Python和Python->Java传递数据的代码。希望这能帮助到别人!!其中,字符串数组“s”被传递给python脚本,而“City”列表则通过函数调用getData()从python传递给Java。

javaprog.java:

import org.python.core.PyInstance;
import org.python.util.PythonInterpreter;


public class JavaProg
{
    static PythonInterpreter interpreter;

   @SuppressWarnings("resource")
public static void main( String gargs[] )
   {
      String[] s = {"New York", "Chicago"};
      PythonInterpreter.initialize(System.getProperties(),System.getProperties(), s);
      interpreter = new PythonInterpreter();
      interpreter.execfile("PyScript.py");
      PyInstance hello = (PyInstance) interpreter.eval("PyScript" + "(" + "None" + ")");
   }

   public void getData(Object[] data)
   {
       for (int i = 0; i < data.length; i++) {
           System.out.print(data[i].toString());
    }

   }
}

pyscript.py:

import JavaProg
class PyScript:
    def __init__(self,txt):
        city = []
        for i in range(0,len(sys.argv)):
            city.append(str(sys.argv[i]))
        jObj = JavaProg()
        jObj.getData(city)
        print "Done!"
 类似资料:
  • 问题内容: 我有一个由javascript函数填充的html表单。我还有另一个javascript函数,可获取所有表单元素的值,并且当前仅使用警报将其显示给用户。通过python使用以下代码显示html页面: 这一切都很好,但是我不想使用警报来显示数据,而是想将数据传递回python,但不知道如何。所有数据都存储在javascript数组中,因此我基本上只需要传递这一数据即可。 编辑:我不能使用任

  • 问题内容: 因此,我试图从根本上建立一个用户选择ID的网页,然后该网页将ID信息发送给python,在python中,python使用ID来查询数据库,然后将结果返回至该网页进行显示。 我不太确定该怎么做。我知道如何使用ajax调用来调用python生成的数据,但是我不确定如何将初始id信息传达给django应用。是否可以说,查询../app/id(IE / app / 8)之类的网址,然后使用该

  • 如何将表单信息从jsp传递到java再传递到jsp。 我有一个jsp表单,当我提交它时,它会直接传递到另一个显示这些信息的jsp页面。但我想先在java文件中处理这些信息,然后再将其传递给jsp。 我在jsp中做了类似的事情。。 然后在process.java我使用request.set属性(“数据”)来存储处理后的数据。但是如何将其重定向回html视图文件?抱歉,这里是新用户。 对不起,这应该是

  • 问题内容: 我如何将数据从随后的php传递回ajax? PHP ajax 我的问题是如何在此处显示值?警报消息给我“未定义”? 问题答案: 您可以按照以下方式进行操作。 JS

  • 问题内容: 我正在尝试使用Django和D3.js编写非常基本的条形图。我有一个名为play的对象,其中datetime字段称为date。我想做的是显示按月分组的播放次数。基本上我有两个问题: 我如何按月份将这些分组,并计算当月的播放次数 将这些信息从Django转换为D3可用的最佳方法是什么。 现在,我在这里查看了其他答案,并尝试了 这接近于我想要的信息,但是当我尝试将其输出到模板中时,它在月末

  • 问题内容: 我知道如何使用jinja模板将数据从python传递到javascript,但是我想将javascript变量传递到python。我想这样做而无需重新加载页面。那可能吗? 问题答案: 是的,就像monkut所说的那样-我相信您想使用JSON和Javascript / jQuery。 这将允许从客户端到服务器的通讯,然后再返回。 我发现的最适用的示例是在Flask片段/模式中:http