上一次是使用JS模拟SDK采集页面的数据,属于前端部分,现在编写一个后台,模拟SDK向服务器提交采集的数据。那么流程是这样的
![a581e4e261550ac525297c02a793d8b8.png](https://i-blog.csdnimg.cn/blog_migrate/f5d13b720f5dca23fa0adaf98413d3a7.jpeg)
其中模拟实现Java SDK数据发送到后台
接着上一个创建的项目,创建一个类,SendDataMonitor目的是向服务器发送数据
![9b2e0fd0c50296fbb7597b3ac2e3f921.png](https://i-blog.csdnimg.cn/blog_migrate/b7f753fc414065e8cdb2fff7b3b85fc7.jpeg)
SendDataMonitor:发送url数据的监控者,用于启动一个单独的线程来发送数据,所使用的包
![9f9909df0fa2dbb5f21074169003bc21.png](https://i-blog.csdnimg.cn/blog_migrate/49cb5e3e7f7366687b07919459449806.jpeg)
具备的属性
![aabd7439f28cdf99459a706a411abfbd.png](https://i-blog.csdnimg.cn/blog_migrate/45c8aa4ac90f852c590e7d5228b0a7de.jpeg)
完成一个单例(设计模式)
![e362167dc010480286e612b414e90089.png](https://i-blog.csdnimg.cn/blog_migrate/fdfe27135c342deef6578a652a65c56a.jpeg)
将Url添加到队列中
![abf53b4ad39b57af346adc620667f493.png](https://i-blog.csdnimg.cn/blog_migrate/6e51e12b6ee8e853eaf91225e75920fc.jpeg)
编写一个工具类用于正式的发送url
![d680fda6b7146b352a056eb1704c8ac9.png](https://i-blog.csdnimg.cn/blog_migrate/ee72ea41fa31334f11a473e403368e46.jpeg)
导入的包
![612759db1b78c643c2871108e8d54baa.png](https://i-blog.csdnimg.cn/blog_migrate/cb7eaefd2c28ef66d88e4f3098ee722d.jpeg)
发送Url的方法
![351c7199146d99940e38beeedce29c81.png](https://i-blog.csdnimg.cn/blog_migrate/f0ffc627026e61910f25a4513403b5aa.jpeg)
下半部分
![04be30c5bf4c7e22f9eedbca9ca0651c.png](https://i-blog.csdnimg.cn/blog_migrate/c3f2e47af5cd1fffd4d6589c2ebea9e3.jpeg)
SendDataMonitor可以调用发送url的方法
![10c07a1ae0a12c51d7d79cdeb929cab0.png](https://i-blog.csdnimg.cn/blog_migrate/f9941f7dd325d17b34d43b2dcb8cdc82.jpeg)
线程中调用具体的处理方法
![a7f159eabfad88d64615d258d80f6418.png](https://i-blog.csdnimg.cn/blog_migrate/d45e08ed6846b1790c3c7f09a9ed961a.jpeg)
创建一个分析数据引擎类
![b10859fdb229385e878b2dafa04ebdc1.png](https://i-blog.csdnimg.cn/blog_migrate/ea8fe35585c8304e503a5464fe6c07fb.jpeg)
所使用的的包
![1922f5df6ba90ad29d53dac0e8912565.png](https://i-blog.csdnimg.cn/blog_migrate/ede2675e5412bf0a75033a3ece2a69b1.jpeg)
编写两个字符空判断的方法
![84ce957ebb05fc8f9bea1af293858454.png](https://i-blog.csdnimg.cn/blog_migrate/8a83905addbbad2c2973ec49cb904f27.jpeg)
添加属性
![4aaeb6f87edf6ededd33e2f3d5138ea9.png](https://i-blog.csdnimg.cn/blog_migrate/ceb6da64f3e61fbc4cdc8dc2f7abcec7.jpeg)
因为这个是模拟执行,假设数据从数据库中取出,放到map中,那么对map数据进行url构建
![84fda694c661707369b545918cc2815d.png](https://i-blog.csdnimg.cn/blog_migrate/819e76921da67275cf106fabb2b86c74.jpeg)
向服务器发送数据
![64e262716d86796ca56e1d7d767e95c8.png](https://i-blog.csdnimg.cn/blog_migrate/f4f26710f646bd2dee04fa4197b36134.jpeg)
创建一个测试方法
将上面的方法更改一下,模拟两个发送订单和发送退单的方法,类似于电商订单
订单
![6773830b20d7d8e91c025a8e5a772438.png](https://i-blog.csdnimg.cn/blog_migrate/019ef957a1e245e0925dcaaf8736e7ab.jpeg)
退单
![d941c1dcaaf5e02c98f184d1a06652a0.png](https://i-blog.csdnimg.cn/blog_migrate/bcff9f00d508b0a0193812bf7081ecd0.jpeg)
创建一个对象用来存放数据
![167bc10afe3d1183220b4c217cdc9e03.png](https://i-blog.csdnimg.cn/blog_migrate/18994a84366dab1d1f56534acdaef2ba.jpeg)
编写属性和hashcode
![b1bf9e2a3203928291898a9561d0c2f2.png](https://i-blog.csdnimg.cn/blog_migrate/6f6298f76201d210cbf67aed86094712.jpeg)
编写equals
![4e16cc68bde5a5a225224572e8682a52.png](https://i-blog.csdnimg.cn/blog_migrate/9b89ba212f70ebf2df6d524b180f47ab.jpeg)
创建测试类
![1ed39ba65b2154faf04c64faece26896.png](https://i-blog.csdnimg.cn/blog_migrate/862c9ff0d1133c55e1aa3b3b2ca01975.jpeg)
编写属性
![b13752f8596c88484e59e4f6e1f2b880.png](https://i-blog.csdnimg.cn/blog_migrate/d6142b1e760fd0e088c25e465a77c247.jpeg)
自定义获取订单的方法
![6b07d1404dcf2063fa166e1b7ec86484.png](https://i-blog.csdnimg.cn/blog_migrate/c71ac7f500fae7c9b2407b8e88cef9d4.jpeg)
自定义退单方法
![a709ad66375d793243d85f1875bca3a2.png](https://i-blog.csdnimg.cn/blog_migrate/0bd2d1fff7bd030e6d97999d3947703d.jpeg)
编写运行方法
![8d8c2a0a05f0c269b7dc63c6e0dc6d61.png](https://i-blog.csdnimg.cn/blog_migrate/4fd5a21e8e796de38512c61d07bb789c.jpeg)
主方法
![4b5ff49435acd8b4c2477ef1592026fb.png](https://i-blog.csdnimg.cn/blog_migrate/d6f01a04fcaec5ac348adfdd0b38dd31.jpeg)
将url改为我们之前部署Nginx的机器,打开Nginx日志,查看下访问的日志情况
![29cf325060237ceebcb8907a2d9ea460.png](https://i-blog.csdnimg.cn/blog_migrate/aac3b01c7fbcd007748bd6687471b472.jpeg)
日志信息
![0173a318e2069f86738e07a169485740.png](https://i-blog.csdnimg.cn/blog_migrate/6d9f25def0e8abbc2b7c4a28594cd37c.jpeg)