解决了java+matlab混编+web(jsp)调用Matlab,网页中显示Figure,详细实例
例子简介
网上java+matlab混编的挺多,大多数实例也都能实现出来,但是将matlab生成出来Figure显示在jsp页面中并配合WebFigure实现的例子却很少,所以我将自己的尝试结果详细的写出来。
一从Java和Matlab混合编程
1.1环境配置
我采用的是Java、jdk1.6.0_45、Eclipse、Matlab2013a,都是64位:
为什么我要强调环境配置都一样呢,首先,我之前Matlab用的是2013a32位的,会报错,Java和Matlab混编要求环境是统一的,同时我之前jdk用的是1.7.0_75,画不出图来,因为matlab必须联合1.6的jdk才能画出图来。
1.2编写plotsin.m和plotcos.m文件
1.3编译写好的两个函数制作一个java包(.jar)(complie the pltosin function as a java Package)如下图所示,使用deploytool命令,然后build
生成的文件夹
1.4 新建一个 Java Project工程,工程名JavaUseMatlab
右键点击工程名,添加(.jar)包
在Java build Path的Libraries下,点击Add External JARS添加javabuilder.jar和建立的matlabplot.jar,如下图所示
javabuilder.jar和matlabplot.jar的位置如下图
1.4 新建个.java文件,右键工程名JavaUseMatlab,如下图所示
并在,MathPlotTest.java文件编写程序
1.5 Run As程序Java Application
结果如下图所示
这个过程就完成,这个例子网上有很多人做,我主要是在后面将生成的Figure,用JSP发布在网页上。
二 Java和Matlab混编 将生成figure发布网页上,直接使用JSP中的网页标签
以绘画的正弦曲线为例,进行说明
2.1 绘制正弦曲线函数plotsin.m
2.2 编译写好的plotsin函数制作一个java包(.jar)(complie the pltosin function as ajava Package)如下图所示,使用deploytool命令,然后build
生成的目录文件如下图所示
2.3新建一个Dynamic Web Project
Eclipse+Tomacat7.0.59+JDK1.6.0_45
右键点击建立的myweb工程,建立一个jsp文件
2.4右键myweb工程,点击Build Path下面的 Configure Build Path
在libraries下面,Add External JARs,将由matlab 生成的plotWeb.jar添加进来;plotWeb.jar在plotWeb的disturb文件夹下,以及matlab安装文件下的javaBuilder.jar文件,文件路径:D:\Program Files\MATLAB\R2013a\toolbox\javabuilder\jar\win64
同时将plotWeb.jar和javaBuilder.jar,拷贝到myweb工程下,WEB-INF下lib文件夹下面,如下图。
同时拷贝webfigures.tld文件,文件目录
D:\ProgramFiles\MATLAB\R2013a\toolbox\javabuilder\webfigures\ 到myweb的
WEB-INF文件夹下,如下图所示。
最后的工程项目机构图如下图所示:
2.5在生成的JSP文件下头部添加相应的引用项
引用webfigures.tld文件,定义标签项
<%@ taglib prefix="wf"uri="/WEB-INF/webfigures.tld"%>
引用WebFigure库,以及自己编写的Matlab类库,另外引用
com.mathworks.toolbox.javabuilder.*,也是必须的,因为其中包含一些Errors定义以及必要的类和接口定义。
<%@ page import="com.mathworks.toolbox.javabuilder.webfigures.WebFigure"%>
<%@ page import="com.mathworks.toolbox.javabuilder.*" %>
<%@ page import="com.mathworks.toolbox.javabuilder.internal.*" %>
<%@ page import="plotWeb.MathPlotSin"%>
最后再body体内添加代码:如图所示
2.6修改目录下web.xml文件,加入如下代码
2.7部署myweb项目到Tomcat,启动Tomcat
在浏览器中输入如下网址: http://127.0.0.1:8080/myweb/Test.jsp
我也是不断试验好久才搞出来的,这是我以画正弦曲线,写的一个详细例子,(Tomcat的配置我就不说了,如果想做这个,首先应该配置好环境)祝君好运!
解决了java+matlab混编+web(jsp)调用Matlab,网页中显示Figure,详细实例相关推荐
- wpf matlab混编,WPF(C#)与MATLAB混合编程
WPF(C#)与MATLAB混合编程 WPF可以为开发者提供便捷地构建用户交互界面的解决方法,而matlab则在科学计算方面有着无与伦比的优势,因此在一些需要将科学算法转换为应用软件的项目中,需要应用 ...
- mac下配置进行c和matlab混编
mac下配置进行c和matlab混编 是用mac的小伙伴有时候有没有感觉很痛苦!遇到什么问题,找相关的解决办法真心不方便,我最近在搞一段程序,要进行c和matlab的混编,可是,在matlab中输入: ...
- matlab振动频谱分析是不是要,VB和Matlab混编实现振动信号的频谱分析
VB和Matlab混编实现振动信号的频谱分析 3 0 物理测试 2 O O 4年第 2期 V B和 Ma t l a b混编实现振动信号的频谱分析 谭轶平, 王振清 ( 北京航空航天大学材料学院,北京 ...
- swift 打包sdk_在封装SDK中Swift和OC混编之相互调用
oc和swift混编之相互调用.jpg 在非SDK中: 1.swift调用oc 步骤: 创建 工程名-Bridging-Header.h 放入oc的头文件,swift即可调用 在swift项目中或者在 ...
- Java读取mapinfo格式_求助:如何把mapinfo格式的地图数据放到网页中显示
声明,我可不是做广告哦 mapXtreme Java,是目前用于Internet或企业Intranet唯一的100%纯Java地图服务器.mapInfo mapXtreme Java与J2EE兼容,为 ...
- 使用JSP代码编写index.jsp文件在网页上显示数据库数据
使用JSP代码编写index.jsp文件在网页上显示数据库数据 在index.jsp文件上使用JSP代码编写 可以在网页上以表格的形式显示数据库 内的数据 需要创建一个项目 因为需要用到关于JDBC的 ...
- m 文件 dll matlab 中调用_Java与MatLab混编
该篇介绍Java与MatLab的混合编程 环境:Windows10,Jdk 1.8.0_261 64位,MatLab r2018b 64位 先安装MatLab MatLab安装 一.打开MatLab, ...
- c 与matlab混编,C与MATLAB混合编程之调用MATLAB引擎
Visual Studio调用MATLAB需要的配置已经在<Visual Studio调用MATLAB的配置>一文中给出了详细的步骤,本文将介绍混合编程的示例. 在C中调用MATLAB,据 ...
- c 与matlab混编,谈谈Matlab与C/C++或C#的互调用(混合编程)
记得当初一个师姐问我知不知道如何在Matlab里调用C++的程序,还真把我问住了.因为我以前就知道C++调用Matlab的方法,这方面网上资料一大堆.没想到现在自己突发奇想又遇到另外一个问题,Matl ...
最新文章
- WanaCrypt0r勒索蠕虫完全分析报告
- 京东JIMI用户未来意图预测技术揭秘
- mongodb上一篇下一篇_如何使用Microsoft office word—上一篇
- 熬夜做出的数据可视化,却被领导臭骂,只因这个......
- mysql5.6.4安装_win 7 64 mysql 5.6.4 安装
- 详解tensorflow数据读取-tf.train.string_input_producer和tf.train.start_queue_runners
- 如何使用Win7系统自带的刻录功能刻录启动光盘
- linux 3 4文件管理ppt,第8单元-Linux系统文件查找与文件管理.ppt
- 蒙古文输入法linux版,蒙古文输入法下载 德力海蒙古文输入法 V2.1.3 官方安装版(附使用手册) 下载-脚本之家...
- 导线测量步骤c语言程序,基于excel表的附合导线计算程序.doc
- Grafana panel 图形高级定制
- 千锋前端-React全家桶_React项目实战全球新闻发布管理系统-db.json文件数据
- Stm32学习(基于HAL库)
- php bouncy castle,ORG.BOUNCYCASTLE
- 【PTA】6-4 奇数值结点链表
- 【Fracturing amp; Destruction】Unity3D的物体爆裂、炸裂、碎裂效果
- How to play PRA CandyBox game——GoDapp
- 美通社企业新闻汇总 | 2019.2.27 | 中国大学名次在世界大学排名中继续攀升;吉利2021年发布支持5G量产车型...
- linux ss的使用方法
- Plants vs. Zombies