近期,老师有个项目是将普通的流水线改造升级为机器人生产线。
项目需求:将生产线上机器人产生的数据上传至云服务器,手机端或电脑端通过URL(资源定位符)访问云服务器上的数据,利用数据将整个流水线的生产情况展现出来。
第一步:编写Server的程序。目的是:建立与客户端的连接,接收客户端(即流水线上的机器人设备数据)发送的数据,然后将数据存储到MySQL数据库。
第二步:利用Servlet框架编写响应请求的服务端程序。目的是:当手机端或电脑端通过URL访问云服务器时,读取数据库数据,封装成JSON格式返回给请求。
第三步:通过编写安卓程序测试。
Server程序的编写:
import java.io.IOException;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class sever {
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
ServerSocket server = new ServerSocket(9999); // 在9999端口上监听
boolean flag = true; // 循环标记
while (flag) { // 接收多个客户端请求
Socket client = server.accept(); // 客户端连接
new Thread(new EchoThread(client)).start(); // 创建并启动新线程
}
server.close();
}
}
class EchoThread implements Runnable { // 建立线程类
//公共常量
public static final String user = "root";
public static final String password = "hsl95116";
String data;
String result[] =null;
private Socket client; // 每个线程处理一个客户端
public EchoThread(Socket client) { // 创建线程对象时传递Socket
this.client = client;
}
@Override
public void run() {