Java编程笔记之网络编程1

原创 2014年11月07日 00:33:33

1.什么是计算机网络

       把分布在不同地理区域内的计算机与专门的外部设备用通信联络连接在一起,组成一个功能强的,规模大的网络系统,可以方便的传输信息,共享数据。

2.常见的网络编程方式

ISAPICGIWinInetWinsock、 

1  ISAPI主要是开发基于浏览器客户端与服务器端程序。效率比CGI方式高,而且也扩展了CGI没有的一些功能。(基于TCP/IP模型中的应用层)

2  CGI主要是开发基于浏览器客户端与服务器端程序。(基于TCP/IP模型中的应用层)

3  WinInet主要是开发客户端程序。(基于TCP/IP模型中的应用层)

4  Winsock主要是基于socket来开发客户端与服务器端程序。(基于TCP/IP模型中的各层)要想开发低层协议的程序的话就要了解协议的报文格式。

3.TCP/IP:传输控制协议/网际协议

四层:应用层(应用层,表示层,会话层),传输层,互联网层,网络接口层(物理层,数据链路层)

什么是三次握手:

(1)客户端发送一个带SYN标志的TCP报文到服务器。这是三次握手过程中的报文1。

(2) 服务器端回应客户端的,这是三次握手中的第2个报文,这个报文同时带ACK标志和SYN标志。因此它表示对刚才客户端SYN报文的回应;同时又标志SYN给客户端,询问客户端是否准备好进行数据通讯。 

(3) 客户必须再次回应服务段一个ACK报文,这是报文段3


4.IP地址:32位二进制长度表示

5.Socket(套接字):两个应用程序之间传输数据,每一端成为一个Socket,通常实现Clinet-server通信,建立连接时所需的寻址信息为远程计算机的IP地址和端口号

代码实例---网络编程步骤

1.

创建socket;
打开连接到socket的输入/输出流;
按照一定的协议对socket进行读/写操作;
关闭socket;


服务端
class TcpServer{
      public static void main(String args[]){
             ServerSocket server=new ServerSocket(8888);//创建端口号
             while(true){
                      Socket  s=server.accept();
                      
BufferedWriter   bw = new BufferedWriter( newOutputStreamWriter(s1.getOutputStream()));//创建客户端输入输出流
                       bw.write("nihaoa");
                       bw.close();
                       s.close();
            }

     }
}

服务器

public class TCPClient//TCP Client

    public staticvoid main(String[] args) {

        try {

            Sockets = new Socket("127.0.0.1", 8888);

            BufferedReaderbr = new BufferedReader( new InputStreamReader(s.getInputStream()));

            Stringstr = br.readLine();

            System.out.println("服务器说:" + str);

            s.close();

        } catch (UnknownHostExceptione) {

            System.err.println("服务器连接失败!");

            e.printStackTrace();

        } catch (IOExceptione) {

            e.printStackTrace();

        }

    }

}













相关文章推荐

Java网络编程笔记1

网络编程的基础知识 什么叫计算机网络,就是把分布在不同地理区域的计算机与专门的外部设备通信线路互连成一个规模大、功能强的网络系统。 计算机网络主要能做些以下功能: 1)资源共享 2)信息传输与...

Java笔记6 网络编程<1>Socket、UDP

23天-01-网络编程(概述) l  网络编程 Ø  网络模型 Ÿ   OSI参考模型。 Ÿ   TCP/IP参考模型 Ø  网络通信要素 Ÿ   IP地址 Ÿ   端口号 Ÿ   传...

19. JAVA 网络编程 Part 1 (IP与InetAddress类、URL与URLConnection类、URLEncoder与URLDecoder类、TCP&UDP)---- 学习笔记

本章目标: 了解IP地址与InetAddress类的关系了解如何使用URL

java编程_socket_套接字_网络编程

============================================================                                        ...

Socket网络编程学习笔记(1)

  • 2009年06月22日 22:47
  • 32KB
  • 下载

JAVA编程思想笔记-1-this关键字

this表示“这个对象”或者“这个应用”,只能应用于方法内部,希望返回“这个对象的引用”。注意以下几点:     1.若希望在同一类下面调用其他方法,直接调用方法名即可,不需要this.方法名。高级...

我的java编程思想4读书笔记(一)1-5章

该读书笔记是我看java编程思想4的一些摘抄,这个不一定适合你,所以题目叫做我的java编程思想读书笔记,如果对于该书感兴趣,我建议还是自己看看。 1.所有的类最终都继承自单一的基类-Object类...

学习笔记-基础知识1-java编程概述

1.编程 编程就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程。 为了使计算机能够理解人的意图,人类就必须要将需解决的问题的思路、方法、和手段通过计算机能够 理...

java编程思想-读书笔记(1)对象入门

第一章:对象入门 1.1 、面向对象编程(OOP)的吸引力: (1)对管理人员,它实现了更快和更廉价的开发与维护过程 (2)对分析与设计人员,建模处理变得更加简单,能生成清晰、易于维护的设计方案...

《Java编程思想第四版》笔记---21章(1) 并发

线程是进程中一个任务控制流序列,由于进程的创建和销毁需要销毁大量的资源,而多个线程之间可以共享进程数据,因此多线程是并发编程的基础。 多核心CPU可以真正实现多个任务并行执行,单核心CPU程序其实不是...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java编程笔记之网络编程1
举报原因:
原因补充:

(最多只允许输入30个字)