- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基干Matlab与Java集成生态环境监测系统设计探究
基于Matlab与Java集成的生态环境监测系统设计研究 [摘 要]本文依据必威体育精装版的生态环境监测系统设计理论与实践研究,介绍了一种以JBuilder为开发平台,本文详细分析研究了Matlab和Java的集成,利用Java-COM桥技术实现了两者之间的集成。利用Java-COM桥技术用Matlab作为数学分析、数据处理工具、算法开发工具的大气环境评测系统的设计与实现。该系统不仅充分发挥了JBuilder开发应用程序的强大优势,而且充分利用了Matlab在计算、图形绘制上的长处
[关键词]生态监测 系统设计 Matlab Java
中图分类号:TF762.3 文献标识码:A 文章编号:1009-914X(2016)21-0101-02
1 COM和Java解决方案
Microsoft Java编译器、虚拟机以及各式各样的工具极大简化了Java/COM程序员的工作。编译器有特殊的引导命令和包,可将Java类当作COM类对待。但在大多数情况下,只需依赖Microsoft JVM为COM提供的支持,同时利用两个有力的外部工具。若将Java对象创建成一个COM服务器,那么对象仍然会在JVM内部运行。Microsoft JVM是作为一个DLL实现的,它向操作系统展示出了COM接口。在内部,JVM将对这些COM接口的函数调用映射成Java对象中的方法调用。当然,JVM必须知道哪个Java类文件对应于服务器执行模块;之所以能够找出这方面的信息,是由于事前已用Javareg在Windows注册表内注册了类文件。Javareg是与Microsoft Java SDK配套提供的一个工具程序,能读入一个Java类文件,生成相应的类型库以及一个GUID,并可将类注册到系统内
Java/COM客户是一些特殊的Java代码,它们想激活和使用系统内注册的一个COM服务器。同样地,JVM会与COM服务器沟通,并将它提供的服务作为Java类内的各种方法展示出来。另一个Microsoft工具是jactivex,它能读取一个类型库,并生成相应的Java源文件,在其中包含特殊的编译器引导命令。生成的源文件属于在指定类型库之后命名的一个包的一部分。下一步是在自己的COM客户Java源文件中导入那个包
2 利用Java-COM桥实现Matlab与Java集成
2.1 大气环评系统中COM组件生成关键技术
计算模块是系统的核心模块,根据大气环境评测模型中给出的公式,我们可以方便的得到污染源附近定点的污染物浓度,利用Matlab编程求解,点源模式和熏烟模式以及对点源模式的扩展在Matlab中的关键代码
1.Matlab中COM Builder编译环境设置
Matlab COM Builder在编译生成COM组件时需要借助于外部的编译器,因此首先需要设置Matlab COM Builder所使用的外部编译器,通过mbuilde-setup完成编译环境的设置。Matlab自动注册mwcomutil.dll和mwcommgr.dll,这两个DLL是Matlab COM Builder生成的COM组件的基础,所有生成的COM组件都会使用到这两个DLL
2.创建COM组件
将编写好的M文件利用Matlab的COM生成器发布成COM组件,并且在系统中完成注册。成功创建COM组件后,创建信息显示在“Build Status”面板中。Matlab把.m文件编译成COM组件,同时将COM组件的信息登记在注册表中,登记信息中的ProgID为该COM组件的标识符,jawin就是通过ProgID来调用COM组件
3. 组件接口
COM是一个标准,遵从这个标准的组件能够相互调用。COM通过接口对外提供所有的功能,每一个COM组件都实现一定的接口,至少实现IUnknown接口。由于系统对Matlab的调用只涉及到简单的参数传递,没有特殊要求的接口,故开发的组件有IUnknown和IDispatch接口。接口本质上是一个只包含虚函数指针的结构体。具体的函数由组件类实现,客户调用组件正是通过虚函数指针实现的
4.接口定义
COM规范在采用OSF的DCE规范描述远程调用接口IDL (Interface Description Language,接口描述语言)的基础上,进行扩展形成了COM接口的描述语言。接口描述语言提供了一种不依赖于任何语言的接口描述方法,因此,它可以成为组件程序和客户程序之间的共同语言。COM规范使用的IDL接口描述语言不仅可用于定义COM接口,同时还定义了一些常用的数据类型,也可以描述自定义的数据结构,对于接口成员函数,可以指定每个参数的类型、输入输出特性,甚至支持可变长度的数组的描述。IDL支持指针类型,与
文档评论(0)