- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
无线射频识别中间件技术探秘
3.4 策略模式切换多种报告上传、命令下发方式
事件周期结束之后,中间件需要组装报告上传给规则的预订者,即应用系统。上传的方式有多种,如HTTP、Socket、JMS等等。中间件的核心逻辑处理模块不应该关心具体的上传技术,相应工作应交给报告上传模块来做,核心逻辑处理模块只须完成自己的工作,然后把一定格式的数据通过报告上传模块发送,参见代码示例。
报告发送接口ReportSender:
publicinterfaceReportSender{
voidsendReport(ECReportsreports);
}
通过Http方式发送报告的ReportSender接口实现类ReportSenderByHttp:
publicclassReportSenderByHttpimplements ReportSender {
public void sendReport(ECReports reports) {
}
}
通过Socket方式发送报告的ReportSender接口实现类ReportSenderBySocket:
publicclassReportSenderBySocketimplements ReportSender {
publicvoidsendReport(ECReportsreports) {
}
}
通过JMS方式发送报告的ReportSender接口实现类ReportSenderByJms:
publicclassReportSenderByJmsimplements ReportSender {
publicvoidsendReport(ECReportsreports) {
}
}
报告发送示例客户端类
SendReportWorker:
publicclassSendReportWorker{
privateReportSendersender;
privateECReportsreports;
publicvoidsetReports(ECReportsreports) {
this.reports = reports;
}
publicstaticvoidmain(String[] args) {
SendReportWorker worker = new
SendReportWorker();
worker.sender.sendReport(reports);
}
publicvoidsetSender(ReportSendersender) {
this.sender = sender;
}
}
这样,发送消息的工人类可通过设置ReportSender的实例来灵活设置其发送方式。
同样,中间件的清点命令下发,即中间件与阅读器之间的接口,也存在多种方式,如Socket、SOAP等,也可采用类似的设计。
3.5 观察者模式处理上报消息
阅读器的消息上报转换为消息对象,对消息对象的接收、分发可采用经典的观察者模式实现。
4、中间件发展方向
4.1 与阅读器管理系统的融合
中间件是阅读器与后台应用系统之间的桥梁,而阅读器通常有设备管理需求,比如软件版本下载、设备告警管理、参数配置等等,阅读器管理系统也是直接与阅读器交互的软件模块。于是,如何处理好中间件与阅读器管理系统之间的关系成为一个亟待解决的问题。
从软件部署(部署在同一台主机上)、软件模块重用(重用阅读器通信模块)等角度考虑,中间件与阅读器管理系统的融合势必成为中间件本身的一个优势。
4.2 对多标准标签的支持
RFID技术在国内外的发展和应用方兴未艾,国际上多个标准组织都试图统一RFID标准,但在一定的时期内,势必出现多标签并存的情况。于是,对多标准标签的支持也是中间件系统的一个发展方向。
4.3 对多厂商阅读器的支持
中间件与阅读器之间的接口、通信方式以及信息格式,也无法做到统一标准。对多厂商阅读器的支持、至少对少数几家主流厂商的阅读器的支持,已经是对中间件所提出的基本要求。
1 2 3
上一篇:非接触超低功耗红外接近感应技术
下一篇:爱特梅尔无线广播设计解决方案