外网接口(浏览器接口)调取设备数据,放到数据库里
需求:外网接口(浏览器接口)调取设备数据,放到数据库里。
方案1:b/s写个页面。ajax调取,js做个定时器。发布到linux系统上。用linux带的lynx或者w3m或者link浏览器,命令打开该页面。一直运行。
方案2:c/s java用quartz做个任务,利用HttpURLConnection类连接接口。这样服务一启动,任务就开始执行了。
最终方案1因为浏览器打开页面后,不走js代码,以失败告终,网上可查询资料太少。就用方案2
开发方案2的过程也是一路坎坷。
遇到的技术点
1.任务配置下载了quartz包,将任务配置到了applicationContext.xml.可是quartz类总是找不到,查下资料。
需要log4j,slf4j,slf4j-log4j,quartz-job等jar包,版本也有特别注意下,spring3.x以下需使用quartz1.x版本、spring3.x以上需使用qartz2.x版本。可是我都这样做了,还是没有quartz类,后来发现,原来还需要spring-context-support.jar。
2.任务类调用service报错,空指针错误,估计是工具类没法注入。后来在类上面加了个@Component。问题解决了
3.httpUrlConnection的post提交方法。
4.java解决json
5.日期和时间戳的转换
6.mysql date_add函数
最后终于大功告成!!!!