7.5 Californium
Californium[1]是Eclipse IoT项目的一部分,Californium可简称为Cf。Californium是使用Java语言实现的CoAP开源框架。Californium包含CoAP服务器和CoAP客户端方面绝大多数RFC文档所描述的特性。与其他轻量级的开源实现不同,Californium还包括CoAP安全部分DTLS。相比于Python、Node.js等新一代计算机编程语言,Java语法较为沉重、学习周期也长,但Java在Web开发和Android开发领域却占有举足轻重的地位。本书前文提及的coap://wsncoap.org测试服务器便使用Cf框架开发。
Californium是本章中较难掌握的部分,该部分需要用户已经具备Java开发经验。虽然这些部分看似复杂,但是只要参考本章的步骤耐心操作也可以正确掌握。
使用Californium之前需要在主机中正确安装JDK(Java Development Kit)和Java集成开发工具。在本节入门示例中,Windows主机内已经正确安装JDK,使用Eclipse作为Java集成开发工具。
[1] https://www.eclipse.org/californium/。
7.5.1 准备工作
与之前入门示例相似,树莓派3代依然作为CoAP服务器,而另一台Windows或Linux主机作为CoAP客户端。为了保证入门示例中生成的可执行jar文件可在树莓派或Windows主机中顺利运行,需在树莓派和Windows主机中正确安装JDK。由于树莓派3中已经默认安装了JDK,而多数Windows主机可参考以下步骤完成JDK的安装。
1.Windows主机下JDK安装
(1)获取JDK安装文件
前往Oracle官网下载最新版本的JDK安装文件,并安装到Windows主机中,本节JDK的安装目录为“D:\Program Files\Java\jdk1.8.0_111”。
(2)进入环境变量修改界面
为了正常使用JDK,需在Windows中设置环境变量。在桌面右击“我的电脑”选择属性,进入“系统属性”界面,选择“高级”选项卡再点击“环境变量”。如图7-9所示。
图7-9 系统属性界面
(3)增加JAVA_HOME变量
在系统变量中增加JAVA_HOME变量,在变量值中写入JDK具体安装路径,例如JDK的安装路径为“D:\Program Files\Java\jdk1.8.0_131”。如图7-10所示。
(4)增加CLASSPATH变量
在系统变量中再增加一个CLASSPATH变量,在变量值中增加lib目录和tools.jar文件,此处的变量值为“.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar”。如图7-11所示
(5)修改PATH变量
最后修改PATH变量。在PATH变量中通过“新建”方法增加两项,一项为“%JAVA_HOME%\bin”,另一项为“%JAVA_HOME%\jre\bin”,如图7-12所示。
图7-12 修改PATH变量
(6)JDK安装验证
为了验证JDK是否正确安装,可在Windows控制台中输入“java-version”,若安装正确可获得如图7-13所示结果。
图7-13 验证JDK安装是否正确
2.树莓派中验证JDK安装
对于树莓派3代来说JDK已经默认安装软件,在树莓派3控制台中运行“java-version”也可以查询此时树莓派3中的JDK版本编号。树莓派3代控制台的输出结果如下:
java -version
java version "1.8.0_65"
Java(TM) SE Runtime Environment (build 1.8.0_65-b17)
Java HotSpot(TM) Client VM (build 25.65-b01, mixed mode)
7.5.2 Californium入门示例
Californium入门示例中将会包括两台设备,其中树莓派3作为CoAP服务器,该服务器提供一个hello资源和一个time资源,而另一台