python web java web_java web中java和python混合使用

首先安装配置好pycharm+Anaconda2 特别的,需要配置好python的环境变量,因为在用java调用python 的时候,需要通过线程调用

测试环境变量是否配置成功 在命令窗口输入python,显示如下则说明配置成功

将写好的python工程代码放置在Anaconda2的Lib目录下面 这里是Anaconda2安装的目录 例如我安装在D:\adt-bundle-windows-x86-20131030\Anaconda2 我的工程文件是content_recommender_core 那么就放在D:\adt-bundle-windows-x86-20131030\Anaconda2\Lib

现在将写好的python文件放置到java web工程上去,这个文件的存放与java web文件的建立类似,所以可以放置在任何路径下,例如我是放在src目录下

放置好所有文件之后,就是到了最关键的时候,那就是需该对应的文件路径 其中最重要的是需该python 代码中的config.py文件的路径 因为工程部署到了tomcat之后,相对的路径就会有些变化,所以需要修改

例如python需要读取的文件是在我的tomcat的/webapps/PythonAndJSP/WEB-INF/classes/com/wtu/xmlpage/course.xml,那么config.py文件中的路径设置应该是../webapps/PythonAndJSP/WEB-INF/classes/com/wtu/xmlpage/course.xml

为了达到路径的统一化修改,建议使用相对路径,那么在run.py文件中,可以这样设置路径,之后的路径变化,就只要修改config.py文件了 也就是需要引用的文件直接通过变量名引用

所有的工作做好之后,就是测试 测试的主要代码 String path="G:/编译练习/JSP/PythonAndJSP/src/ETS/runS.py"; Process p; String cmdStr="python "+path; try { //执行命令 p = Runtime.getRuntime().exec(cmdStr); //取得命令结果的输出流 InputStream fis=p.getInputStream(); p.waitFor(); //用一个读输出流类去读 InputStreamReader isr=new InputStreamReader(fis); //用缓冲器读行 BufferedReader br=new BufferedReader(isr); String line=null; listCourse=new ArrayList(); //直到读完为止 while((line=br.readLine())!=null) { String lines[]=line.split("\t"); 其中读取python执行文件的代码路径只能是本地上存放的文件位置,也就是说不能是tomcat上面的文件

9 到这里,所有的工程做完,可以正确运行得到最后的结果了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaPython混合开发是一种将JavaPython两种编程语言结合使用的开发方法。它的目的是通过充分发挥两种语言的优势,来满足不同开发需求。 Java是一种面向对象的编程语言,它具有强大的跨平台性和丰富的类库支持。它可以用于开发大型企业应用、Web应用和移动应用等。而Python是一种简单易学的脚本语言,它具有清晰简洁的语法和强大的开发效率,被广泛应用于数据分析、人工智能、科学计算和Web开发等领域。 将JavaPython混合开发可以发挥两者的优势,提高开发效率和灵活性。比如,可以使用Java来开发底层的系统模块和高性能的算法,然后使用Python来编写测试脚本和数据分析脚本,以提高开发效率和减少开发周期。此外,JavaPython还可以通过调用对方的代码来实现相互调用和集成,使得应用具有更高的灵活性和可扩展性。 JavaPython混合开发还可以利用各自的生态系统。Java拥有丰富的类库和框架,可以提供强大的功能和稳定性;而Python具有丰富的第三方库,例如NumPy、Pandas和TensorFlow等,可以提供丰富的数据分析和机器学习功能。开发者可以根据需求选择最适合的工具和环境,从而更加高效地完成任务。 总而言之,JavaPython混合开发可以充分发挥两者的优势,提高开发效率和灵活性,同时利用各自的生态系统,满足不同的开发需求。这种混合开发的方式在实际项目被广泛应用,并取得了良好的效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值