java web中java和python混合使用
2018-06-18 00:12:30来源:未知 阅读 ()
利用java web技术展示python算法处理后的数据
工具/原料
-
myeclipse10
-
pycharm+Anaconda2
方法/步骤
-
首先安装配置好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<Course>();
//直到读完为止
while((line=br.readLine())!=null)
{
String lines[]=line.split("\t");
其中读取python执行文件的代码路径只能是本地上存放的文件位置,也就是说不能是tomcat上面的文件
-
到这里,所有的工程做完,可以正确运行得到最后的结果了
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 国外程序员整理的Java资源大全(全部是干货) 2020-06-12
- 2020年深圳中国平安各部门Java中级面试真题合集(附答案) 2020-06-11
- 2020年java就业前景 2020-06-11
- 04.Java基础语法 2020-06-11
- Java--反射(框架设计的灵魂)案例 2020-06-11
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash