MATLAB生产服务器Java客户基础
的mps_client.jar
Java®客户端库让你评估MATLAB®使用本机Java数据部署在远程服务器上的函数。
获得mps_client.jar
客户端库
有几个选项可以获得mps_client.jar
客户端库基于您的项目设置:
在一个MATLAB生产服务器安装,
mps_client.jar
位于
.MPS_INSTALL美元
/客户端/ java该库可在以下网址下载MATLAB生产服务器客户端库.选择要下载文件夹的发行版,然后解压缩。
mps_client.jar
位于/ java
.库也托管在Maven™存储库中https://mvnrepository.com/artifact/com.mathworks.prodserver/mps_java_client.要在Maven项目中使用jar,请将以下坐标包含在
pom.xml
文件:<!——https://mvnrepository.com/artifact/com.mathworks.prodserver/mps_java_client——>
com.mathworks。prodserver mps_java_client . proserver release_number< /版本> < / >的依赖
配置要使用的开发环境mps_client.jar
通过将其添加到Java类路径。
选择客户-服务器通信的工作流
Java客户端API为客户端-服务器通信提供了两个工作流:
使用MWHttpClient
类
此工作流使用MWHttpClient
类,并在计算部署在服务器上的MATLAB函数时隐藏请求创建和数据序列化的实现细节。此工作流提供以下两个选项来评估已部署的MATLAB函数。
根据您的需求,决定客户端是使用静态代理还是动态代理。
静态代理使用一个对象,该对象实现了反映已部署MATLAB函数的接口。您为静态代理提供接口。这是一个类型安全的API,它强制在编译时将适当的数据类型传递给函数。
看到静态代理接口指南.
动态代理根据提供给控件的MATLAB函数名创建服务器请求
invoke ()
方法。将函数名作为参数与函数参数一起传递给代理。您需要提供函数名、输出参数的数量以及计算函数所需的所有输入参数。这样做可以将类型检查推迟到运行时。看到动态调用MATLAB函数.
编写Java代码将代理实例化到MATLAB制作服务器实例并调用MATLAB函数。
创建一个
MWClient
对象所承载的服务进行通信MATLAB制作服务器实例。创建MATLAB数据结构来保存客户端和服务器之间传递的数据。
调用MATLAB函数。
释放系统资源
关闭
方法MWClient
对象。
使用RESTful API和protobuf
此工作流使用MATLAB制作服务器MATLAB函数执行的RESTful API为MATLAB函数执行请求创建和协议缓冲区(protobuf)用于数据序列化。协议缓冲区是一种与语言和平台无关的序列化结构化数据的方法。
若要在向服务器发出请求时使用protobuf,请设置HTTP内容类型
头来应用程序/ x-google-protobuf
在客户机代码中。Java客户端库提供了helper类,用于在内部创建基于proto格式的protobuf消息,并返回相应的字节数组。在HTTP请求体中使用此字节数组。Java客户端库提供了反序列化protobuf响应的方法和类。
有关示例,请参见在Java客户端中使用协议缓冲区的异步RESTful请求而且在Java客户端中使用协议缓冲区的同步RESTful请求.
日志记录
中的日志记录功能可以在Java客户机应用程序中记录诸如HTTP请求状态、服务器url和输出数据等详细信息MATLAB制作服务器Java客户端库。为了提供日志记录选项,Java客户端库mps_client.jar
,将SLF4J API模块(版本1.7.25)打包为客户端库的一部分。您可以使用任何slf4j支持的日志框架,如L金宝appog4j、Logback或之后
包中。如果没有绑定,SLF4J默认为无操作实现。使用绑定的详细信息,请参见桥接遗留apiSLF4J网站上的文档。
使用日志记录框架或不同版本的SLF4J时,必须将其添加到mps_client.jar
在Java类路径上。
如果你使用之后
包进行日志记录时,必须加载和使用java.util.logging.Logger
类在Java应用程序代码中com.mathworks.mps.client.MWHttpClient
类。欲了解更多有关之后
,请参阅甲骨文®包之后Javadoc。