从python获取数据并使用java&leaf打印

2ekbmq32  于 2021-09-13  发布在  Java
关注(0)|答案(0)|浏览(169)

我目前正在研究如何从python获取数据。该场景是将数据发送到python脚本进行处理,并将输出发送到java代码。java代码应该能够将这些数据打印到html页面。
我的python输出是一个大约150万行的 Dataframe 。
这里是我的java代码

public void addAObjectForm(@RequestParam("Coord1") String Coord1,@RequestParam("Coord2") 
 String Coord2 ,@RequestParam("Coord3") String Coord3, @RequestParam("Coord4")String Coord4,@RequestParam("datedeb") 
 String datedeb,@RequestParam("datefin") String datefin,@RequestParam("datevisua") String datevisua) throws IOException {
//System.out.println(Coord1);
try
{
     String pathPython = "C:/Users/21622/Documents/workspace-spring-tool-suite-4-4/projet1/test1.py";
     String [] cmd = new String[9];
     cmd[0] = "python";
     cmd[1] = pathPython;
     cmd[2] = Coord1;
     cmd[3] = Coord2;
     cmd[4] = Coord3;
     cmd[5] = Coord4;
     cmd[6] = datedeb;
     cmd[7] = datefin;
     cmd[8] = datevisua;
     Runtime r = Runtime.getRuntime();
     Process p = r.exec(cmd);
     BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream()));
     while((s=in.readLine()) != null){
         System.out.println(s);
        // System.out.println(Coord1);
         }
}

catch(Exception e){
}

}

还有python代码

coord1=sys.argv[1] // data got from java ans sys package
coord2=sys.argv[2]
coord3=sys.argv[3]
coord4=sys.argv[4]
cord1=float(coord1)
cord2=float(coord2)
cord3=float(coord3)
cord4=float(coord4)
datedeb=sys.argv[5]
datefin=sys.argv[6]
datevisu=sys.argv[7]
Latitude=pd.read_csv('./latitude.csv')
Longitude=pd.read_csv('./longitude.csv')
Latitude=pd.DataFrame({'Latitude':Latitude})
Longitude=pd.DataFrame({'Longitude':Longitude})
Res=pd.concat([Longitude, Latitude,SM],axis=1) // the result that should be returned to java and displayed in thymleaf page

这个

BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream()));
     while((s=in.readLine()) != null){
         System.out.println(s);
        // System.out.println(Coord1);

什么也不给我。我应该在python代码中添加一些东西吗?
你能给我一些提示来帮助我前进吗
提前谢谢

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题