当前位置: 首页 > news >正文

网站开发工程师所需要的经验pc 手机自适应网站用什么做

网站开发工程师所需要的经验,pc 手机自适应网站用什么做,有哪些网站系统,网络推广和网络运营的区别文章目录 前言 客户端 服务器端 输出线程端 End 前言 TCP(Transmission Control Protocol)是一种面向连接的、可靠的网络传输协议,它提供了端到端的数据传输和可靠性保证。 本程序就是基于tcp协议编写而成的。 利用 TCP 协议进行通信的…

文章目录

前言

客户端

服务器端

输出线程端

End

前言

 

TCP(Transmission Control Protocol)是一种面向连接的、可靠的网络传输协议,它提供了端到端的数据传输和可靠性保证。

 

本程序就是基于tcp协议编写而成的。

 

利用 TCP 协议进行通信的两个应用程序是有主次之分的,一个称为服务器程序,另一个称为客户机程序,两者的功能和编写方法大不一样。

 

代码结构图

在这里插入图片描述

 

 

 

客户端

import java.io.IOException;

import java.io.OutputStream;

import java.net.Socket;

import java.util.Scanner;

 

public class Client {

    public static void main(String[] args) throws IOException {

        Scanner in = new Scanner(System.in);

 

        // 发送数据

        // 创建 Socket对象

        // 创建对象时会连接服务器,如果连接不上会报错

        // 127.0.0.1 代表本机地址

        Socket socket = new Socket("127.0.0.1", 11451);

        MyThread thread = new MyThread();

        OutputStream os = socket.getOutputStream();

 

        while (true) {

            if (thread.getState() == Thread.State.NEW) {

                thread.setName("芜湖");

                thread.setSocket(socket);

                thread.start();

            }

 

            String str = in.next();

            os.write(str.getBytes());

            if ("886".equals(str)) {

                socket.shutdownOutput();

                break;

            }

        }

 

        System.out.println("主线程退出");

        in.close();

        os.close();

        socket.close();

    }

}

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

 

 

服务器端

 

import java.io.IOException;

import java.io.InputStreamReader;

import java.io.OutputStream;

import java.net.ServerSocket;

import java.net.Socket;

import java.util.Scanner;

 

public class Server {

    public static void main(String[] args) throws IOException, InterruptedException {

        Scanner in = new Scanner(System.in);

 

        // 接收数据

        // 创建ServerSocket对象

        ServerSocket ss = new ServerSocket(11451); // 获取指定端口的数据

        MyThread thread = new MyThread();

 

        Socket socket = ss.accept();// 监听客户端的连接,获取连接

        OutputStream os = socket.getOutputStream(); // 获取输出流

 

        while (true) {

            // 判断该线程是否启动

            if (thread.getState() == Thread.State.NEW) {

                thread.setName("呀呼");

                thread.setSocket(socket);

                thread.start();

            }

 

            // 从连接通道中获取输出流

            // 写出数据

            String str = in.next();

            os.write(str.getBytes());

            // 结束

            if ("886".equals(str)) {

                socket.shutdownOutput();

                break;

            }

        }

        System.out.println("主线程退出");

        in.close();

        os.close();

        socket.close();

        ss.close();

    }

}

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

 

 

输出线程端

 

import java.io.*;

import java.net.Socket;

import java.time.LocalDateTime;

import java.time.format.DateTimeFormatter;

 

public class MyThread extends Thread {

 

    Socket socket;

 

    public void setSocket(Socket socket) {

        this.socket = socket;

    }

 

    @Override

    public void run() {

        while (true) {

            BufferedInputStream isr = null; // 获取输出流

            try {

                isr = new BufferedInputStream(socket.getInputStream());

                int len;

                byte[] bytes = new byte[1024];

                while ((len = isr.read(bytes)) != -1) {

                    String target = new String(bytes, 0, len);

 

                    // 获取当前时间

                    LocalDateTime dateTime = LocalDateTime.now(); // get the current date and time

                    // 按照相应格式解析

                    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-dd-MM HH:mm:ss");

                    // 输出当前时间

                    System.out.println(dateTime.format(formatter));

                    // 输出对方传输的内容

                    System.out.println(getName()+":"+target);

                }

            } catch (IOException e) {

                break;

            }

        }

        System.out.println(getName()+"输出线程退出");

    }

}

 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

End

此代码我已经测试过可以实现最初的无线数据传输,客户端运行在一个电脑上,服务器端运行在另一台电脑上,这时只需要将客户端的目标ip地址改为服务器端电脑的ip地址(如果不知到如何查询,win+r -> cmd->ipconfig,就可以看到自己电脑的IPv4 地址)。

 

需要注意的是,当时的测试环境是两台电脑处于同一个WiFi热点下进行的。

 

 

 

http://www.yayakq.cn/news/974230/

相关文章:

  • 网站设计应遵循的原则国外html响应式网站模板
  • 普通门户网站开发价格网站开发需求方案
  • php网站开发案例论文顺义网站开发
  • 企业门户网站模板html在哪个网站可以自助建站
  • 优质高职院建设网站一篇关于大学网站建设与管理的论文
  • 宝塔怎么做两个网站的解析小程序和app
  • 有什么做衣服的网站wordpress 模板怎么用
  • 在线编程的网站泉州推广优化公司
  • 佛山新网站建设机构小程序公众号开发方案
  • 公司如何做网站做推广有名的网站制
  • 怎样做代刷网站长志鸿优化设计官网
  • 哪个网站专做进口商品的微信管理系统登录
  • 南昌网站排名优化价格搜索引擎调词工具
  • 温州网站建设结构百度指数api
  • 国外做电商平台的网站有什么运城市做网站价格
  • 在哪个网站上做蓝思测评编程 朋友 做网站
  • 佛山网站建设佛山网站制作手机app下载软件
  • 网站建设分金手指排名二五秦皇岛网站制作定制
  • 广东建设信息网站塔吊查询wordpress后台非常卡
  • 许昌建设局网站ppt自动生成器
  • 无锡建设执业资格注册中心网站怎么样才算大型网站开发
  • 广州万安建设监理有限公司网站赤峰浩诚网站建设有限公司
  • 做资源分享网站怎么样企业文化墙设计
  • 网站备案收费吗网站是怎样建立的流程是什么
  • 佛山企业网站排名正规男科医院
  • 芜湖网站装修公司做网站
  • 新衡阳网站网站建设初衷
  • 高速公路建设论坛网站推广计划表格
  • 建设工程消防监督管理规定网站东莞微网站建设费用
  • 怎么做类似淘宝网站网站后期技术维护